Documentos de Académico
Documentos de Profesional
Documentos de Cultura
UNIDAD ZACATENCO
PRACTICA 5
Estructuras de selección
Grupo: 1EV2
Fecha: 07/04/17
Tema: FUNCIONES
INDICE
Objetivo 3
Ej1 9
Ej2 12
Ej3 15
Ej4 20
Ej5 24
3
OBJETIVOS:
MARCO TEÓRICO
switch (expresión)
{//inicio de switch
case expresión 1 : Sentencia 1;
Sentencia 2;
break;
case expresión 2 : Sentencia 1;
Sentencia 2;
break;
case expresión N : sentencia 1
sentencia 2
break;
default : sentencias1
sentencia 2
}//fin de switch.
5
Ecuación cuadrática
Una ecuación cuadrática es una ecuación en su forma ax2 + bx + c, donde a, b, y
c son números reales.
Ejemplo: 9x2 + 6x + 10
Hay tres formas de hallar las raíces ( el o los valores de la variable) de las
ecuaciones cuadráticas:
1. Factorización Simple
2. Completando el Cuadrado
3. Fórmula Cuadrática
Factorización Simple:
Completando el Cuadrado:
Fórmula Cuadrática:
Ejemplo:
#include <stdio.h>
#include <stdlib.h>
#include <math.h>
int main()
{
float a,b,c,i,j,k;
char opcion;
else opcion='a' ;
switch (opcion)
{
case 'a':
break;
case 'b':
printf("X = 0\n");
break;
case 'c':
printf("X = %0.3f\n",-c/b);
break;
case 'd':
break;
case 'e':
printf("X = 0\n");
printf("X = %0.3f\n",-b/a);
break;
break;
case 'f':
i=b*b;
j=4*a*c;
if((i-j)<0)printf("No tiene solucion\n");
else
{
k=sqrt(i-j);
printf("X = %0.3f\n",-b+k/2*a);
8
printf("X = %0.3f\n",-b-k/2*a);
break;
system("pause");
return 0;
}
9
DESARROLLO
En principal
1 triangulo,
2 circulo
3 cuadrado
4 rectangulo
Si op es 1
Llamar funcion triángulo con parámetros por referencia en el argumento, calcule
area y perimetro retorne valores por referencia e imprima en donde fue
invocada esta función el área
y el perimetro.
Si op es 2
Llamar funcion círculo con parámetros por referencia en el argumento,calcule area
y perimetro retorne valores por referencia , imprima en donde fue invocada esta
función el área y el perímetro.
Si op es 3
Llamar funcion cuadrado con parámetros por referencia en el argumento, , calcule
area y perimetro retorne valores por referencia e imprima en donde fue
invocada esta función el área y el perímetro.
Si op es 4
igual al anterior pero para el rectángulo
#include <stdio.h>
#include <stdlib.h>
#include <math.h>
float ftriqui (float*,float*,float);
float fcir (float*,float*,float);
float fcu (float*,float*,float);
float frec (float*, float*, float, float);
int main ()
{
float rarea, rperimetro, base, haltura,aux,radio,lado;
int op;
printf("Este programa sirve para calcular area y perimetro, de algunas figuras geometricas \n\n");
printf("\n Elige una opcion");
printf("\n1.-Triangulo Equilatero");
printf("\n2.-Circulo");
printf("\n3.-Cuadrado");
printf("\n4.-Rectangulo\n");
scanf("%d",&op);
if (op==1)
{
printf("Dame lado:\n");
scanf("%f",&lado);
aux=ftriqui(&rarea,&rperimetro,lado);
printf("la area es=%.2f\n\n",rarea);
printf("el perimetro es=%.2f\n\n",rperimetro);
}
if (op==2)
{
printf("Dame radio:\n");
scanf("%f",&radio);
aux=fcir(&rarea,&rperimetro,radio);
printf("la area es=%.1f\n\n",rarea);
printf("el perimetro es=%.1f\n\n",rperimetro);
}
if (op==3)
{
printf("Dame lado:\n");
scanf("%f",&lado);
aux=fcu(&rarea,&rperimetro,lado);
printf("la area es=%.0f\n\n",rarea);
printf("el perimetro es=%.0f\n\n",rperimetro);
}
if (op==4)
{
printf("Dame base:\n");
scanf("%f",&base);
printf("Dame haltura\n");
scanf("%f",&haltura);
aux=frec(&rarea,&rperimetro,base,haltura);
printf("la area es=%.0f\n\n",rarea);
printf("el perimetro es=%.0f\n\n",rperimetro);
}
if (op!=1,2,3,4)
{
printf("No elegiste JA JA JA");
}
system("pause");
11
}
float ftriqui (float* area,float* perimetro,float lado)
{
*area=sqrt(3)/4*pow(lado,2);
*perimetro=3*lado;
return 4;
}
float fcir (float* area,float* perimetro,float radio)
{
*area=M_PI*pow(radio,2);
*perimetro=2*M_PI*radio;
return 2;
}
float fcu (float* area,float* perimetro,float lado)
{
*area=pow(lado,2);
*perimetro=4*lado;
return 3;
}
float frec (float* area, float* perimetro, float base, float haltura)
{
*area=base*haltura;
*perimetro=2*base+2*haltura;
return 1;
}
12
EJERCICIO 2
IDEM (idem significa igual al anterior) pero utilice if else
#include <stdio.h>
#include <stdlib.h>
#include <math.h>
float ftriqui (float*,float*,float);//Funcion del triangulo
float fcir (float*,float*,float);//Funcion del circulo
float fcu (float*,float*,float);//Funcion del cuadrado
float frec (float*, float*, float, float); //Funcion del rectangulo
int main(void)
{
float rarea, rperimetro, base, haltura,aux,radio,lado;
int op;
printf("Este programa sirve para calcular area y perimetro, de algunas figuras geometricas \n\n");
printf("\n Elige una opcion");
printf("\n1.-Triangulo Equilatero");
printf("\n2.-Circulo");
printf("\n3.-Cuadrado");
printf("\n4.-Rectangulo\n");
scanf("%d",&op);
if (op==1)
{
printf("Dame lado:\n");
scanf("%f",&lado);
aux=ftriqui(&rarea,&rperimetro,lado);
printf("la area es=%.2f\n\n",rarea);
printf("el perimetro es=%.2f\n\n",rperimetro);
}
if (op==2)
{
printf("Dame radio:\n");
scanf("%f",&radio);
aux=fcir(&rarea,&rperimetro,radio);
printf("la area es=%.1f\n\n",rarea);
printf("el perimetro es=%.1f\n\n",rperimetro);
}
if (op==3)
{
printf("Dame lado:\n");
scanf("%f",&lado);
aux=fcu(&rarea,&rperimetro,lado);
printf("la area es=%.0f\n\n",rarea);
printf("el perimetro es=%.0f\n\n",rperimetro);
}
if (op==4)
{
printf("Dame base:\n");
scanf("%f",&base);
printf("Dame haltura\n");
scanf("%f",&haltura);
aux=frec(&rarea,&rperimetro,base,haltura);
printf("la area es=%.0f\n\n",rarea);
printf("el perimetro es=%.0f\n\n",rperimetro);
}
else (op>4);
{
printf("No elegiste\n\n");
}
system("pause");
13
}
float ftriqui (float* area,float* perimetro,float lado)
{
*area=sqrt(3)/4*pow(lado,2);
*perimetro=3*lado;
return 4;
}
float fcir (float* area,float* perimetro,float radio)
{
*area=M_PI*pow(radio,2);
*perimetro=2*M_PI*radio;
return 2;
}
float fcu (float* area,float* perimetro,float lado)
{
*area=pow(lado,2);
*perimetro=4*lado;
return 3;
}
float frec (float* area, float* perimetro, float base, float haltura)
{
*area=base*haltura;
*perimetro=2*base+2*haltura;
return 1;
}
14
15
EJERCICIO 3
#include <stdio.h>
#include <stdlib.h>
#include <math.h>
int main ()
char opcion;
printf("Este programa sirve para calcular area y perimetro, de algunas figuras geometricas \n\n");
printf("\nA.-Triangulo Equilatero");
printf("\nB.-Circulo");
printf("\nC.-Cuadrado");
printf("\nD.-Rectangulo\n");
scanf("%c",&opcion);
switch(opcion)
case 'a':
printf("Dame lado:\n");
scanf("%f",&lado);
aux=ftriqui(&rarea,&rperimetro,lado);
break;
case 'b':
printf("Dame radio:\n");
scanf("%f",&radio);
aux=fcir(&rarea,&rperimetro,radio);
break;
case 'c':
printf("Dame lado:\n");
scanf("%f",&lado);
aux=fcu(&rarea,&rperimetro,lado);
break;
case 'd':
printf("Dame base:\n");
scanf("%f",&base);
printf("Dame haltura\n");
scanf("%f",&haltura);
aux=frec(&rarea,&rperimetro,base,haltura);
break;
system("pause");
}
17
*area=sqrt(3)/4*pow(lado,2);
*perimetro=3*lado;
return 4;
*area=M_PI*pow(radio,2);
*perimetro=2*M_PI*radio;
return 2;
*area=pow(lado,2);
*perimetro=4*lado;
return 3;
float frec (float* area, float* perimetro, float base, float haltura)
*area=base*haltura;
*perimetro=2*base+2*haltura;
return 1;
}
18
19
20
EJERCICIO 4
#include<stdio.h>
#include<stdlib.h>
#include<math.h>
float f1 (float,float,float*,float*);
float f2 (float,float,float*,float*);
float f3 (float,float,float*,float*);
int main ()
float v,r,po,co,aux,re,vo,i;
char opcion;
scanf("%c",&opcion);
switch(opcion)
case 'a':
scanf("%f %f",&v,&r);
aux=f1(v,r,&po,&co);
printf("\npotemcia es=%.1f\n",po);
printf("\nintensidad es=%.1f\n",co);
break;
case 'b':
scanf("%f %f",&v,&i);
aux=f2(v,i,&po,&re);
printf("\npotemcia es=%.1f\n",po);
printf("\nresistencia es=%.1f\n",re);
break;
case 'c':
scanf("%f %f",&r,&i);
aux=f3(r,i,&po,&vo);
printf("\npotemcia es=%.1f\n",po);
printf("\nvoltaje es=%.1f\n\n",vo);
break;
system("pause");
*co=v/r;
*po=pow(v,2)*r;
22
*po=v*i;
*re=v*i;
*po=pow(1,2)/r;
*vo=i*r;
}
23
24
Problema 2
#include <stdlib.h>
#include <math.h>
int main(void)
float s;
int salario;
scanf("%d",&salario);
if(salario<18000)
s=salario*(0.12)+salario;
printf("=%.2f\n\n",s);
if(salario==18000<30000)
s=salario*(0.08)+salario;
printf("=%.2f\n\n",s);
25
if(salario==30000<50000)
s=salario*(0.07)+salario;
printf("=%.2f\n\n",s);
system("pause");
return 0;
}
26
27
#include <stdlib.h>
#include <math.h>
int main(void)
int a,b,c;
printf("Ingresar 3 datos\n\n");
scanf("%d %d %d",&a,&b,&c);
if(a>c)
else (c>a);
system("pause");
return 0;
}
28
29
30
#include <stdlib.h>
#include <math.h>
int main(void)
int a,b,c;
scanf("%f %f %f",&a,&b,&c);
if (a>b)
if (a>c)
if (b>a)
if (b>c)
}
31
if(c>a)
if(c>b)
system("pause");
return 0;
}
32
33
Considera
#include <stdlib.h>
#include <math.h>
int main(void)
float yd,pulg,milla,km,mili,mts;
int op;
scanf("%d",&op);
if(op==1)
printf("Ingresar pulgadas\n\n");
scanf("%f",&pulg);
mili=pulg*(25.40);
printf("milimitros=%.2f",mili);
if(op==2)
34
printf("Ingresar yardas\n\n");
scanf("%f",&yd);
mts=yd*(0.9144);
printf("metros=%.2f",mts);
if(op==3)
printf("Ingresar millas\n\n");
scanf("%f",&milla);
km=milla*(1.6093);
printf("kilometros=%.4f",&km);
if(op!=1,2,3)
system("pause");
return 0;
}
35
36
CONCLUSIÓN
REFERENCIAS