domingo, 22 de abril de 2012

Practica 12

Practica 12 Problema 1

Escribir un programa para introducir 10 numeros enteros en un arreglo llamado emax y encuentre el maximo valor introducido. Siga el rastro del maximo elemento del arreglo y del numero del indice para el maximo. Despues de desplegar los numeros, imprima estos dos mensajes:

El valor del maximo es:
Este es el elemento numero___en la lista de numeros.
Haga que el programa despliegue los valores correctos en lugar del subrayado en los mensajes.
b) Haga que el programa localice el menor de los datos introducidos.
Inicio
int main()
{
num[10]     int
lecturaDatosArreglo(num)
PRINT "La suma Total de datos es: ",sumaDatosArreglo(num)
PRINT "El promedio de datos es  : ",promedioDatosArreglo(num)
PRINT "El mayor es: ",mayorDatosArreglo(num)
PRINT "El menor es: ",menorDatosArreglo(num)
prom    int = promedioDatosArreglo(num)
PRINT "Valores mayor o igual a promedio\n"
for(int I 0 to 10 step i++)
{
if(num[i]>=prom)
{
PRINT num[i]
}
}
Fin de int main
}

Funciones
void lecturaDatosArreglo(numeros[10]     int)
{
I     int
PRINT "Introduce 10 Valores enteros\n"
for(i0 to 10 step i++)
{
PRINT "Dato ",(i+1),"= "
Read numeros[i]
}
}
fin funcion

int sumaDatosArreglo(numeros[10]    int)
{
 i,suma=0    int
for(i 0 to 10 step i++)
{
suma=suma+numeros[i]
}
return suma
}
fin funcion

int  promedioDatosArreglo(numeros[10]    int)
{
suma=0    int
suma=sumaDatosArreglo(numeros)
return suma/10
}
mayorDatosArreglo    int (numeros[10]    int)
{
mayor=0,i=0    int
for(i 0 to 10 step i++)
{
if(mayor<numeros[i])
mayor=numeros[i]
}
return mayor
}
menorDatosArreglo    int (numeros[10]   int)
{
menor=99999,i=0    int
for(i 0 to 10 step i++)
{
if(numeros[i]<menor)
menor=numeros[i]
}
return menor
}
Fin


Practica 12 Problema 2

Escriba un programa que especifique tres arreglos unidimensionales denominados corriente, resistencia y voltios. Cada arreglo debe ser capaz de almacenar diez elementos. Introduzca valores para los arreglos corriente y resistencia. Los datos introducidos en el arreglo voltios deben ser el producto de los valores correspondiente en elos arreglos corriente y resistencia (entonces, voltios[i]=corriente[i]*resistencia[i]). Despues de introducir todos los datos, despliegue la siguiente salida:

Corriente         Resistencia       Voltios

Totales:
Despliegue el valor correcto debajo de cada columna.

a)

Pseudocodigo


Inicio
int main()
{float corriente[10],resistencia[10],voltios[10] 
print "DATOS CORRIENTE\n" 
lecturaD(corriente) 
print "DATOS RESISTENCIA\n" 
lecturaD(resistencia) 
calcularV(corriente,resistencia,voltios) 
desplegarD(corriente,resistencia,voltios) 
 }
Fin

Funciones
Inicio
void lecturaD(float a[10])
{int i=0 
print "INTRODUCE 10 VALORES REALES\n" 
for(i=0  i<10  i=i+1)
{
print "DATO "  ,(i+1)  ,"= " 
read a[i] 
}}
Fin funcion

void calcularV(float c[10],float r[10],float v[10])
{int i=0 
for(i=0  i<10  i=i+1)
{
v[i]=c[i]*r[i] 
}}
float sumaD(float a[10])
{float suma=0.0 
int i=0 
for(i=0  i<10  i=i+1)
{
suma=suma+a[i] 
}return suma  }
Fin funcion

void desplegarD(float c[10],float r[10],float v[10])
{int i=0 
print "        CORRIENTE  RESISTENCIA         VOLTIOS             \n" 
for(i=0  i<10  i=i+1)
{
print "           "  ,c[i]  ,"                       "  ,r[i]  ,"                  "  ,v[i]  ,
}
print "total:     "  ,sumaD(c)  ,"           "  ,sumaD(r)  ,"        "  ,sumaD(v)  ,"  "  ,
}
Fin

b)

Pseudocodigo


Inicio
int main()
{float corriente[10],resistencia[10],potencia[10] 
print "DATOS CORRIENTE\n"  
lecturaD(corriente) 
print "DATOS RESISTENCIA\n" 
lecturaD(resistencia) 
calcularP(corriente,resistencia,potencia) 
desplegarD(corriente,resistencia,potencia) 
getch()  }
Fin

Funciones
Inicio
void lecturaD(float a[10])
{int i=0 
print "INTRODUCE 10 VALORES REALES\n" 
for(i=0  i<10  i=i+1)
{
print "DATO ", (i+1), "= " 
read a[i] 
}}
Fin funcion

void calcularP(float c[10],float r[10],float p[10])
{int i=0 
for(i=0  i<10  i=i+1)
{
p[i]=c[i]*c[i]*r[i] 
}}
float sumaD(float a[10])
{float suma=0.0 
int i=0 
for(i=0  i<10  i=i+1)
{
suma=suma+a[i] 
}return suma  }
Fin funcion

void desplegarD(float c[10],float r[10],float p[10])
{int i=0 
print "        CORRIENTE  RESISTENCIA         POTENCIA          \n" 
for(i=0  i<10  i=i+1)
{
print "           ", c[i], "                         ", r[i], "                    ", p[i],  
}
print "total:     ", sumaD(c), "           ", sumaD(r), "        ", sumaD(p), "  ",  
}
Fin


Practica 12 Programa 3



Pseudocodigo
Inicio
void main(){
 N1,tema int

do{
Temas() 
read tema 
clrscr() 
switch (tema){
case 1: Tema1() 
print "\n\tDesea elegir otro tema"
print "\t1)Si"

read N1 
if(N1!=1){
clrscr() 
ExamenU1() 
read N1  }
break 
case 2:  Tema2() 
print "\n\tDesea elegir otro tema" 
print "\t1)Si"

read N1 
if(N1!=1){
clrscr() 
ExamenU1() 
read N1  }
break 
case 3:  Tema3() 
print "\n\tDesea elegir otro tema" 
print "\t1)Si" 
read N1 
if(N1!=1){
clrscr() 
ExamenU1() 
read N1  }
break 
case 4:
ExamenU1() 
read N1 
break 
default: N1=1  }
clrscr()   }
while(N1==1)  }
Fin programa



Funciones
Inicio
void Temas() {
int tema 
print "\n\n\n\t\t       Tutorial Teorico Mecanica Clasica\n\n" 
print "\n\n\n\t\t\t         Version: 2.0\n\n" 
print "\n\n\n\t\t\            Unidad I: Cinematica\n\n\n" 
print "Objetivo:" 
print "\n\nEl principal objetivo de la fisica es encontrar el numero tan limitado" 
print "de leyes fundamentales que gobiernan los fenomenos naturales y usarlas" 
print "para desarrollar teorias que puedan predecir resultados de futuros experimentos."
print "Las leyes fundamentales usadas en el desarrollo de teorias son expresadas en un" 
print "lenguaje matematico, la herramienta que provee la conexion entre la teoria y un" 
print "experimento. Finalmente, la fisica incluye teoras, conceptos, leyes y"
print "experimentos en mecanica clasica, termodinamica, optica y electromagnetismo." 
print "\n\nTemas de la unidad:" 
print "\nI.1 Sistema Internacional de unidades." 
print "\n   *Conversion de unidades" 
print "\nI.2 Movimiento multilineo." 
print "\n   *Desplazamiento, velocidad y aceleracion" 
print "\n   *Movimiento uniforme y uniformemente acelerado" 
print "\n   *Movimiento relativo" 
print "\n   *Caida libre de cuerpos" 
print "\nI.3 Movimiento curvilineo." 
print "\n   *Componentes rectangulares de la velocidad y aceleracion" 
print "\n   *Movimiento de proyectiles"
print "\n   *Componentes tangencial y normal de la velocidad y la aceleracion" 
print "\n   *Movimiento circular uniforme y no uniforme" 
print "\nI.4 Examen de la unidad" 
print "\n\tSeleccione el tema: "   }
Fin funcion


void Tema1(){
int N1 
print "Sistema Internacional de Unidades" 
print "\nEl Sistema Internacional de Unidades, tambien denominado Sistema" 
print "Internacional de Medidas, es el nombre que recibe el sistema de unidades" 
print "que seusa en casi todos los paises. Se instauro en 1960, a partir de la" 
print "Conferencia General de Pesos y Medidas, durante la cual inicialmente se" 
print "reconocieron seis unidades fisicas basicas." 
print "\nCantidades Fundamentales:" 
print "[Masa]=Kg" 
print "[Tiempo]=s" 
print "[Longitud]=m" 
print "\nCantidades Derivadas:"  
print "[Volumen]=m^3"
print "[Area]=m^2" 
print "[Velocidad]=m/s" 
print "[Aceleracion]=m/s^2"
print "[Fuerza]=Kg*m/s^2"
print "[Presion]=N/m^2" 
print "[Trabajo]=N*m= Joule" 
print "[Potencia]=J/s= Watt"
print "\n\t(Presiona ENTER para continuar)" 
clrscr()  }
void Tema2(){
clrscr() 
print "Movimiento Multilineo" 
print "\n*Desplazamiento, Velocidad y Aceleracion" 
print "\nDesplazamiento:" 
print "es la longitud de la trayectoria comprendida entre la" 
print "posicion inicial y la posicion final de un punto material. Un caso" 
print "particular de desplazamiento es el debido a la difusion."
print "\nVelocidad:" 
print "es una magnitud física de carácter vectorial que expresa la distancia" 
print "recorrida por un objeto por unidad de tiempo. Se representa con una V y" 
print "sus unidades son m/s." 
print "\nAceleracion:" 
print "es una magnitud vectorial que nos indica el cambio de velocidad por" 
print "unidad de tiempo. Se representa con a y sus unidades son m/s^2." 
print "\n\t(Presiona ENTER para continuar)" 
clrscr() 
print "\n*Movimiento Uniforme y uniformemente acelerado" 
print "\nEn mecanica clasica el movimiento de una particular sometida a una" 
print "fuerza constant resulta ser un movimiento uniformemente acelerado." 
print "En el casomas general la trayectoria de una particula sometida a una" 
print "fuerza constante resulta ser una parabola." 
print "\nDentro de este tema podemos encontrar conceptos como velocidad" 
print "promedio,aceleracion promedio, y cuatro formulas" 
print "basicas que se utilizaran en la resolucion de problemas." 
print "\nVelocidad promedio:" 
print "es la distancia del desplazamiento entre el tiempo recorrido,lo cual se" 
print " expresa con la formula:" 
print "\nV= Xf-Xi/Tf-Ti" 
print "\nAceleracion promedio:" 
print "\nse define como la velocidad final menos la velocidad inicial" 
print "entre el tiempo final menos el tiempo inicial, lo cual se expresa con" 
print "la formula:" 
print "\na= Vf-Vi/Tf-Ti" 
print "\nLas cuatro formulas basicas que se utilizaran en esta unidad son:" 
print "\n1.)X=Xo+Vot+1/2at^2"
print "2.)X=Xo+1/2(V-Vo)t" 
print "3.)V=Vo+at" 
print "4.)V^2=Vo^2+2a(X-Xo)"
print "\n\t(Presiona ENTER para continuar)" 
clrscr() 
print "\n*Movimiento relativo" 
print "\nMovimiento relativo:" 
print "\nEl movimiento siempre es un concepto relativo porque se refiere a un" 
print "sistema referencial que es escogido por el observador. Esto es debido a" 
print "que diferentes observadores pueden utilizar referencias distintas, es" 
print "por esto que es importante relacionar las observaciones realizadas por" 
print "los observadores." 
print "\nPor ejemplo:" 
print "\nUna particula se encuentra en movimiento en un referencial si" 
print "su posicion con respecto a el cambia en el transcurso del tiempo  " 
print "en caso contrario, la particula esta en reposo en dicho referencial." 
print "De estas definiciones, vemos que tanto el concepto de movimiento como el" 
print "de reposo son relativos. Asi, el pasajero que esta sentado en un vagon"
print "de ferrocarril se encuentra en reposo con respecto al vagon   pero" 
print "como el tren se mueve con respecto a la Tierra, el pasajero se encuentra" 
print "en movimiento con respecto a los arboles que observa desde el tren. A su" 
print "vez, esos arboles estan en reposo respecto de la Tierra, pero en " 
print "movimiento respecto del pasajero del tren." 
print "\n\t(Presiona ENTER para continuar)" 
getch () 
clrscr() 
print "\n*Caida libre" 
print "\nCaida libre:" 
print "\nSe denomina caida libre al movimiento de un cuerpo bajo la accion de" 
print "un campo gravitatorio. El concepto es aplicable también a objetos en" 
print "movimiento vertical ascendente sometidos a la acción desaceleradora de" 
print "la gravedad, como un disparo vertical." 
print "\n\t(Presiona ENTER para continuar)" 
clrscr()   }
Fin funcion

void Tema3(){
print "Movimiento Curvilineo" 
print "\n*Componentes rectangulares de la velocidad y aceleracion" 
print "\nLas componentes rectangulares de la velocidad y aceleracion," 
print "se obtienen en el movimiento de proyectiles, tanto para el tiro" 
print "horizontal,como para el tiro oblicuo." 
print "\nEn el tiro horizontal, al ser un movimiento en dos dimensiones la"
print "componente horizontal de la velocidad (Vx) es la misma durante toda la" 
print "trayectoria del proyectil con la cual es lanzada, y la componente vertical" 
print "de la velocidad, esta dada por la aceleración de la gravedad (9.8 m/seg^2.)." 
print "\nAhora podremos ver lo dicho en un problema basico: " 
print "\n¿Cuales son las componentes vertical y horizontal de una piedra que" 
print "es lanzada horizontalmente con una velocidad de 25 m/seg, si cae al suelo" 
print "despues de 5 segundos de ser lanzada?" 
print "\nEl procedimiento es:" 
print "\nVoH = Es igual a la velocidad con que es lanzada la piedra 25 m/seg." 
print "\nVv = gt" 
print "\nVv = 9.8 m/seg^2 x 5 seg = 49 m/seg." 
print "\n\t(Presiona Enter para continuar)" 
clrscr() 
print "\n*Movimiento de proyectiles"
print "\nSe denomina proyectil a cualquier objeto al que se le da una" 
print "velocidad inicial y a continuacion sigue una trayectoria determinada por" 
print "la fuerza gravitacional que actúa sobre el y por la resistencia de la" 
print "atmosfera. El camino seguido por un proyectil se denomina trayectoria."
print "\n\t(Presiona Enter para continuar)" 
clrscr() 
print "\n*Componentes rectangulares de la velocidad y aceleracion." 
print "\nEn tanto que el vector velocidad v es tangente a la trayectoria, el" 
print "vector aceleracion a puede descomponerse en dos componentes" 
print "(llamadas componentes intrinsecas)mutuamente perpendiculares: una"
print "componente tangencial at (en la direccionde la tangente a la trayectoria)" 
print ", llamada aceleracion tangencial, y una componente normal an" 
print "(en la direccion de la normal principal a la trayectoria), llamada" 
print "aceleracion normal o centripeta (este ultimo nombre en razon a" 
print "que siempre esta dirigida hacia el centro de curvatura)." 
print "\n\t(Presiona Enter para continuar)" 
clrscr() 
print "\n*Movimiento circular uniforme y no uniforme" 
print "\nEl movimiento circular uniforme describe el movimiento de un" 
print "cuerpo atravesando, con rapidez constante, una trayectoria circular" 
print "\nAunque la rapidez del objeto es constante, su velocidad no lo es:" 
print "La velocidad, una magnitud vectorial, tangente a la trayectoria, en cada" 
print "instante cambia de direccion. Esta circunstancia implica la existencia" 
print "de una aceleracion que, si bien en este caso no varia al modulo de la"
print "velocidad, si varia su direccion" 
print "\n-Velocidad angular:" 
print "La velocidad angular es la variacion del desplazamiento angular por" 
print "unidad de tiempo:w=dw/dt" 
print "\n-Velocidad tangencial:" 
print "La velocidad se obtiene a partir del vector de posicion mediante" 
print "derivacion: V=dr/dt" 
print "\n-Aceleracion:" 
print "La aceleracion se obtiene a partir del vector velocidad por la derivacion:" 
print "a=dv/dt" 
print "\n\t(Presiona Enter para continuar)" 
clrscr()   }
Fin funcion

void ExamenU1(){
char r1,r2,r3,r4,r5,r6,r7,r8,r9,r10 
int x1,x2,x3,x4,x5,x6,x7,x8,x9,x10,calf 
print "\n\tExamen: Unidad I", 
print "1)¿Que anio se instauro el sistema internacional de unidades?" 
print "1)1984  2)1960   3)1945  " 
read r1 
print "2)Es considerada una cantidad fundamental" 
print "1)Masa  2)Gravedad   3)fisica  " 
read r2 
print "3)Es considerada una cantidad derivada" 
print "1)Tiempo 2)Longitud   3)Aceleracion " 
read r3 
print "4)¿Cuales son las unidades en las que se mide la velocidad?" 
print "1)m/s  2)m/s^2   3)m/s^3  " 
read r4 
print "5)¿En que unidades se mide la aceleracion?" 
print "1)m/s 2)m^2   3)m/s^2  " 
read r5 
print "6)Es una magnitud vectorial que nos indica el cambio de velocidad"
print "1)Aceleracion 2)Velocidad   3)Aceleracion centripeda  " 
read r6 
print "7)Es la formula para calcular aceleracion promedio" 
print "1)a=Vf-Vi/Tf-Ti  2)a=V*T   3)a=Vi-Vf/Ti-Tf  " 
read r7 
print "8)Es el movimiento de un cuerpo bajo la accion de la gravedad" 
print "1)Gravedad  2)Caida libre   3)Velocidad instantanea  " 
read r8 
print "9)Es una de la formulas basicas de esta unidad" 
print "1)V=Vo+AT  2)Vo=Xo+Xi   3)X=Xo+A  " 
read r9 
print "10)Si se deriva la velocidad, obtenemos:" 
print "1)Distancia  2)Velocidad constante   3)Aceleracion  " 
read r10 
if(r1=='2'){x1=1  }
else{x1=0  }
if(r2=='1'){x2=1  }
else{x2=0  }
if(r3=='3'){x3=1  }
else{x3=0  }
if(r4=='1'){x4=1  }
else{x4=0  }
if(r5=='3'){x5=1  }
else{x5=0  }
if(r6=='1'){x6=1  }
else{x6=0  }
if(r7=='1'){x7=1  }
else{x7=0  }
if(r8=='2'){x8=1  }
else{x8=0  }
if(r9=='1'){x9=1  }
else{x9=0  }
if(r10=='3'){x10=1  }
else{x10=0  }
calf=(x1+x2+x3+x4+x5+x6+x7+x8+x9+x10)*10 
print "\n\tCalificacion: ", calf 
if(calf<70){print "\t Usted Ha Rebrobado" 
}
else{if(calf<=80){print "\t Usted Ha Aprobado" 
}
else{if(calf<=90){print "\t Usted Ha Aprobado"
}
else{print "\t Usted Ha Aprobado"
}}}
clrscr() 
print "\n\tDesea repasar otro tema"  
print "\t1)Si"
print "\t2)No, salir del tutorial "   }
Fin funcion
















Practica 12 Programa 4

Haga un programa para convercion de divisas de las siguientes monedas Dolar Americano, Euro, Yen, Yuan China, Peso Mexicano, Utilice funciones.

Debe utilizar un arreglo llamado compra para representar la compra de cada una de las monedas, igualmente para un arreglo llamado venta para la venta de cada moneda.

El menu principal del programa es el siguiente:
1) inicializar compra de monedas
2) inicializar venta de monedas
3) conversion de monedas
4) fin de programa
Para conversion de monedas de tener los siguientes mensajes:
Cantidad:
Tipo de Moneda: 1)dolar 2)Euro 3)Yen 4)Yuan 5)Pesos Mexicanos
Convertir a:
A la venta:
A la compra:


Pseudocodigo
Inicio
VentaDolar(real  v[4], real  dolares, int i) real
CompraDolar(real  c[4], real  dolares, int i) real
void MenuMonedas()
void MenuPrincipal()
int main()
{
int op1,op2,x
real  cantidad,venta[4],compra[4]
do{
clrscr()
MenuPrincipal()
print "\nSeleccionar Opcion: " 
read op1
switch(op1)
{
case 1:
clrscr()
print "La venta de un dolar americano a un euro es: \n"
read venta[0]
print "La venta de un dolar americano a un yen es: \n"
read venta[1]
print "La venta de un dolar americano a un yuan es: \n"
read venta[2]
print "La venta de un dolar americano a un peso mexicano es: \n"
read venta[3]
print "\nPara regresar al menu (1): "
read x
break
case 2:
clrscr()
print "La compra de un euro en dolar americano es: \n"
read compra[0]
print "La compra de un yen americano en dolar americano es: \n"
read compra[1]
print "La compra de un yuan en dolar americano es: \n"
read compra[2]
print "La compra de un peso mexicano en dolar americano es: \n"
read compra[3]
print "\nPara regresar al menu (1): "
read x
break
case 3:
clrscr()
MenuMonedas()
print "Introducir cantidad de dolares a convertir: "
read cantidad
print "\nSeleccionar la divisa que desea: "
read op2
switch(op2)
{
case 1:
clrscr()
print "De DOLAR a EURO",  
VentaDolar(venta,cantidad,0)
CompraDolar(compra,cantidad,0)
print "La cantidad de ", cantidad, " dolares:",  
print "\nA la VENTA son ", VentaDolar(venta,cantidad,0), " Euros\n"
print "A la COMPRA son ", CompraDolar(compra,cantidad,0), " Euros\n"
print "Para regresar al menu(1) para salir(0): "
read x
break
case 2:
clrscr()
print "De DOLAR a YEN",  
VentaDolar(venta, cantidad,1)
CompraDolar(compra, cantidad,1)
print "La cantidad de ", cantidad, " dolares:",  
print "\nA la VENTA son ", VentaDolar(venta, cantidad,1), " Yens\n"
print "A la COMPRA son ", CompraDolar(compra, cantidad,1), " Yens\n"
print "Para regresar al menu(1) para salir(0): "
read x
break
case 3:
clrscr()
print "De DOLAR a YUAN",  
VentaDolar(venta,cantidad,2)
CompraDolar(compra,cantidad,2)
print "La cantidad de ", cantidad, " dolares:",  
print "\nA la VENTA son ", VentaDolar(venta,cantidad,2), " Yuans\n"
print "A la COMPRA son ", CompraDolar(venta,cantidad,2), " Yuans\n"
print "Para regresar al menu(1) para salir(0): "
read x
break
case 4:
clrscr()
print "De DOLAR a PESOS",  
print "La cantidad de ", cantidad, " dolares:",  
print "\nA la VENTA son ", VentaDolar(venta,cantidad,3), " Pesos\n"
print "A la COMPRA son ", CompraDolar(compra,cantidad,3), " Pesos\n"
print "Para regresar al menu(1) para salir(0): "
read x
break }
break }
}while(x==1)
}
Fin

Funciones

Inicio
void MenuPrincipal()
{
print "Convertidor de monedas\n"
print "1) Empezar venta de moneda\n"
print "2) Empezar compra de moneda\n"
print "3) Convertir moneda\n"
}
fin funcion

void MenuMonedas()
{
print "\tTipos de monedas\n"
print "1) Euro\n"
print "2) Yen japones\n"
print "3) Yuan chino\n"
print "4) Pesos mexicanos\n"
}
float  VentaDolar(real  v[4], real  dolares, int i)
{return dolares*v[i] }
real  CompraDolar(real  c[4], real  dolares, int i)
{return dolares*c[i] }
Fin





Practica 12 Problema 5

Realizar las siguientes plantillas de funciones:

a) Escriba una plantilla de funcion llamada pantalla() que despliegue el valor de un argumento unico que se le transimita al llamar la funcion.
b) Escriba una plantilla de funcion llamado maximo(), que devuelva el valor maximo de tres argumentos que se transmitan a la funcion cuando esa sea llamada. Suponga que los tres argumentos seran del mismo tipo de datos.
c) Escriba una funcion llamada cuadrado() que calcule y devuelva el cuadrado de un solo argumento transmitido a la funcion cuando esta sea llamada.
d) Escriba una plantilla de funcion llamada entero() que devuelva el valor de numero entero de cualquier argumento que se le transimitra al llamar a la funcion.
incluya las plantillas dentro de un programa y llame  alas funciones dos o mas veces con diferentes argumentos.
Pseudocodigo

Inicio
int main()
{
a1=.1416,a2=.3131 double
m1,m2,m3 char
c1=3,c2=9 int
e1,e2 real
print "a) Funcion Pantalla\n"
pantalla(a1)
pantalla(a2)
print "\nb) Funcion Maximo\n"
print "Introducir 3 valores del mismo tipo de dato\n"
print "valor 1: "
read m1
print "valor 2: "
read m2
print "valor 3: "
read m3
maximo(m1,m2,m3)
print "El maximo es:  ", maximo(m1,m2,m3),   
print "\nc) Funcion Cuadrado\n"
print "el cuadrado de ", c1, " es ", cuadrado(c1),   
print "el cuadrado de ", c2, " es ", cuadrado(c2),   
print "\nc) Funcion Entero\n"
print "Introcudir 2 valores",   
print "valor 1: "
read e1
print "valor 2: "
read e2
entero(e1)
entero(e2)
print "El entero del valor ", e1, " es ", entero(e1),   
print "El entero del valor ", e2, " es ", entero(e2),   
Fin
}

Funciones

Inicio

template <class T>
void pantalla(T valor)
{print "El Valor es: ", valor,   }

template <class T>
T maximo(T v1,T v2,T v3)
{
T mayor
if(v1>=v2)
{mayor=v1 }
else
{mayor=v2 }
 if(mayor>=v3)
{return mayor }
else
{return v3 }
}
fin funcion

template <class T>
T cuadrado(T cuadrado)
{
return pow(cuadrado,2)
}
fin funcion

template <class T>
T entero(T numero)
{
int r
r=numero
return r
}
Fin















sábado, 14 de abril de 2012

Practica 11

Practica 11 Problema 1

Pseudocodigo:

Inicio
 
Funciones
void ImprimirMenu(){
print "Opciones del menu: "
print "1)Area de circulo"
print "2)Area y perimetro cuadrado"
print "3)Area y perimetro Rectangulo"
print "Selecciona opcion: "}

void CalcularAreaCirculo(){
radio,area real
print "Calculo Area de Circulo"
print "Radio Circulo: "
read radio
area=3.1416*radio*radio
print "Area Circulo = ",area}

void AreaCuadrado(){
lado,área double
print "Calculo Area Cuadrado"
print "Lado cuadrado: "
read lado
area=lado*lado
print "Area cuadrado: ",area}

void PerimetroCuadrado (){
lado,perímetro double
print "Calculo Perimetro Cuadrado"
print "Lado: "
read lado
perimetro=4*lado
print "Perimetro = ",perimetro}

void AreaRectangulo(){
lado1,lado2,area double
print "Calculo Area Rectangulo\n"
print "Lado 1 rectangulo: "
read lado1
print "Lado 2 rectangulo: "
read lado2
area=lado1*lado2
print "Area del rectangulo = ",area}

void PerimetroRectangulo(){
lado1,lado2,perímetro double
print "Calculo Perimetro Rectangulo\n"
print "Lado 1 rectangulo: "
read lado1
print "Lado 2 rectangulo: "
read lado2
perimetro=(lado1*2)+(lado2*2)
print "Perimetro del rectangulo = ",perimetro}

Inicio
Programa
{
Opción int
Sigue char
do{
ImprimirMenu()
read opcion
switch(opcion){
case 1: CalcularAreaCirculo()
break
case 2: AreaCuadrado()
PerimetroCuadrado()
break
case 3: AreaRectangulo()
PerimetroRectangulo()
break
default: print "Error en opcion"}
print "Desea hacer otro calculo (s/n)? "
read sigue}
while(sigue=='s' or sigue=='S')}
Fin.





Practica 11 Problema 2

Pseudocodigo

Inicio
Funciones
void ImprimirMenu(){
print "Opciones del menu: "
print "1)Area de circulo"
print "2)Area y perimetro cuadrado"
print "3)Area y perimetro Rectangulo"
print "Selecciona opcion: "}

void CalcularAreaCirculo(double radio){
double  real
area=3.1416*radio*radio
print "Area Circulo = ",area}

void AreaCuadrado(double lado){
area double
area=lado*lado
print "Area cuadrado: ",area}

void PerimetroCuadrado (double lado){
perímetro  double
perimetro=4*lado
print "Perimetro = ",perimetro}

void AreaRectangulo(double lado1,double lado2){
area  double
area=lado1*lado2
print "Area del rectangulo = ",area}

void PerimetroRectangulo(double lado1,double lado2){
perímetro  double
perimetro=(lado1*2)+(lado2*2)
print "Perimetro Rectangulo = ",perimetro}

Inicio
Programa
{
opción int
sigue char
radio,lado1,lado2 real
do{
ImprimirMenu()
read opcion
switch(opcion){
case 1: print "Calculo Area de Circulo"
print "Radio Circulo: "
read radio
CalcularAreaCirculo(radio)
break
case 2: print "Calculo Area y Perimetro Cuadrado"
print "Lado cuadrado: "
read lado1
AreaCuadrado(lado1)
PerimetroCuadrado(lado1)
break
case 3: print "Calcular Area y Perimetro Rectangulo"
print "Base: "
read lado1
print "Altura: "
read lado2
AreaRectangulo(lado1,lado2)
PerimetroRectangulo(lado1,lado2)
break
default: print "Error en opcion"}
print "Desea hacer otro calculo (s/n)? "
read sigue}
while(sigue=='s' or sigue=='S')}
Fin.




Practica 11 Problema 3

Pseudocodigo

Inicio
Funciones
real ImprimirMenu(){
opción int
print "Opciones del menu: "
print "1)Area de circulo"
print "2)Area y perimetro cuadrado"
print "3)Area y perimetro Rectangulo"
print "Selecciona opcion: " read opcion
return opcion}

real CalcularAreaCirculo(double radio){
area  double
area=3.1416*radio*radio
return area}

real AreaCuadrado(double lado){
area  double
area=lado*lado
return area}

real PerimetroCuadrado (double lado){
perímetro  double
perimetro=4*lado
return perimetro}

real AreaRectangulo(double lado1,double lado2){
area  double
area=lado1*lado2
return area}

real PerimetroRectangulo(double lado1,double lado2){
perímetro  double
perimetro=(lado1*2)+(lado2*2)
return perimetro}

Inicio
Programa
{
opción int
sigue char
radio,lado1,lado2,area,perímetro real
do{
opcion=ImprimirMenu()
switch(opcion){
case 1: print "Calculo Area de Circulo"
print "Radio Circulo: "
read radio
area=CalcularAreaCirculo(radio)
print "Area Circulo = ",area
break
case 2: print "Calculo Area y Perimetro Cuadrado"
print "Lado cuadrado: "
read lado1
area=AreaCuadrado(lado1)
print "Area cuadrado: ",area
perimetro=PerimetroCuadrado(lado1)
print "Perimetro = ",perimetro
break
case 3: print "Calcular Area y Perimetro Rectangulo"
print "Base: "read lado1
print "Altura: "read lado2
area=AreaRectangulo(lado1,lado2)
print "Area rectangulo = ",area
perimetro=PerimetroRectangulo(lado1,lado2)
print "Perimetro Rectangulo = ",perimetro
break
default: print "Error en opcion"}
print "Desea hacer otro calculo (s/n)? "
read sigue}
while(sigue=='s' or sigue=='S')}
Fin.


Practica 11 Problema 4

Pseudocodigo

Inicio
funciones
bool digito(char dig){
if(dig>='0' and dig<='9') {return true}
else {return false }}

bool Vocal (char Ch){
if(Ch=='a' or Ch=='A' or Ch=='e' or Ch=='E' or Ch=='i' or Ch=='I' or Ch=='o' or Ch=='O' or Ch=='u' or Ch==U') {return true}
else {return false}}
char NumPosNeg(int Num){
if(Num>0) {return 'P'}
else {return 'N'}}
float Conver_Temp (float c){
return 1.8*c+32}

Inicio
Programa
{
dig,Ch,c char
Num int
print "Esta funcion devuelve un true si el caracter introducido es un digito",
print "del 1 al 9, y un false en caso contrario",
print "Caracter: "
read dig
print digito(dig)
print "Esta funcion devuelve P si el numero introducido es positivo"
print "y un false en caso contrario"
print "Numero: "
read Num
print NumPosNeg(Num)
print "Esta funcion devuelve un true si el caracter introducido es una vocal”
print "y un false en caso contrario"
print "Caracter: "
read Ch
print Vocal(Ch)
print "Esta funcion convierte una temperatura en grados celsius a fahrenheit"
print "Grados celsius: "
read c
print "Grados fahrenheit: ",Conver_Temp (c) }
Fin.