lunes, 28 de mayo de 2012

Practicas 12.


Problema 1.
Programa  para introducir  10 numeros  enteros en un areglo llamado emax y encuentre  el maximo y minimo de los valorores introducidos. 
Pseudo-codigo:
Inicio
void emax(entero num[10])entero valormaximo(entero  Num[10])entero valorminimo(entero Num[10]){entero Num[10],nemax(Num)print"El dato mayor es =  ",valormaximo(Num)print"El dato menor es =  ",valorminimo(Num)-Fin del programa void emax(entero  Num[10]){entero n;print"Introduce  10 datos " for(n=0; n<10;n=n+1){print"",(n+1),".-Dato","= "read Num[n]}}entero  valormaximo(entero  Num[10]){entero mayor=Num[1];for(entero  n=0 to  n<10 step n=n+1){if(Num[n]>mayor){mayor=Num[n]}}return mayor}entero valorminimo(entero  Num[10]){entero  menor=Num[1]for(entero  n=0 to  n<10 step n=n+1){if(Num[n]<menor){menor=Num[n]}}return menor}




Problema 2.
a) Programa  que  especifique  tres  arreglos  unidimencionales  denominados corriente , resistencia  y voltios .Cada arreglo debe de ser capaz de almacenar diez  elemento
Pseudo-codigo:
Inicio
void lecturaDatos(Real a[10]);
void calcularVoltaje(Real c[10],real  r[10],real v[10]);
void desplegarDatos(Real c[10],real  r[10],real  v[10]);
real sumaD(float a[10]);
 
real  corriente[10],resistencia[10],voltios[10];
 print"CORRIENTE ELECTRICA\n";
 lecturaDatos(corriente);
 print"RESISTENCIA ELECTRICA "
 lecturaDatos (resistencia);
 calcularVoltaje(corriente,resistencia,voltios)
 desplegarDatos(corriente,resistencia,voltios)
Fin
void lecturaDatos(real a[10])
 {
entero i=0;
print"Introduce los datos sabiendo que la corriente esta en unidad AMPERE"<<endl;
print"y la resistencia electrica en unidad OHM  \n\n" <<endl;
 
 for(i=0 to i<10 step i=i+1)
 {
print"Datos ",(i+1),"= "
read a[i];
 }}
void calcularVoltaje(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]
 }}
real  sumaDatos(float a[10])
 {
real  suma=0.0;
entero i=0;
 for(i=0 to i<10step i=i+1)
 {
 suma=suma+a[i]
 }
return suma
}
 void desplegarDatos(real  c[10],real t r[10],real  v[10])
 {
entero i=0;
print"Corriente Resistencia Voltaje"
 for(i=0  to i<10 step i=i+1)
 {
 print,c[i]," "<<r[i]," "<<v[i]
 }
print"total:"sumaDatos(c)" "sumaDatos(r)," "<<sumaDatos(v)
}

Problema 2.
b) Escriba un programa que almacene  10 valores  en un arreglo llamado  resistencia , El  programa  tambien debe de crear  2 arreglos llamados  corriente  y potencia , los  cuales deberan ser capaces de alamacenar 10 valores.
Pseudo-codigo:
Inicio
 void lecturaDatos(real a[10]);
 void calcularPotencia(real c[10],real  r[10],real p[10])
 void desplegarDatos(real  c[10],real  r[10],real  p[10])
 float sumaDatos(real  a[10])
 int main()
 {
real  corriente[10],resistencia[10],potencia[10];
print"CORRIENTE ELECTRICA"
 lecturaDatos(corriente)
print"RESISTENCIA ELECTRICA"
 lecturaDatos(resistencia)
 calcularPotencia(corriente,resistencia,potencia)
 desplegarDatos(corriente,resistencia,potencia)
Fin
 }
 void lecturaDatos(real  a[10])
 {
entero i=0;
print"Introduce los datos sabiendo que la corriente electrica se mide en AMPERES"
print"y la resistencia electrica se mide en OHMs"
 for(i=0 to i<10 step i=i+1)
 {
print"Datos ",(i+1),"= "
read a[i]
 }
 }
 void calcularPotencia(real  c[10],real  r[10],real p[10])
 {
entero i=0;
 for(i=0 to i<10 step i=i+1)
 {
 p[i]=c[i]*c[i]*r[i]
 }
 }
real sumaDatos(real  a[10])
 {
real  suma=0.0;
entero  i=0;
 for(i=0 to i<10 step i=i+1)
 {
 suma=suma+a[i]
 }
return suma
}
 void desplegarDatos(real c[10], real  r[10],real  p[10])
 {
entero  i=0;
print"Corriente Resistenci Potencia"
 for(i=0 to i<10 step i=i+1)
 {
 print c[i]""<<r[i]<<""p[i]
 }
print"total:",sumaDatos(c),""sumaDatos(r)""sumaDatos(p);
}

Problema 4.
Haga un programa  para converciones de  divisas  de las  siguientes  monedas , Dolar Americano , Euro, Yen Japones , Yuan Chino , Peso Mexicano .Utilice funciones.
Pseudo-codigo:
-Inicio
Real VentaDolar(float v[4], float dolares, int i)
Real CompraDolar(float c[4], float dolares, int i)
 void MenuMonedas()
 void MenuPrincipal()
 {
Entero m1,m2,c;
Entero cantidad,venta[4],compra[4]
 do
{
 MenuPrincipal()
read m1;
 switch(m1)
 {
 case 1:
 print"Venta Dolar por Euro: "
read venta[0]
 print"Venta Dolar por Yen: "
 cin>>venta[1]
 cout<<"Venta Dolar por Yuan: "
read venta[2]
 print"Venta Dolar por Pesos: "
read venta[3]
 print"Regrasar al menu(1) salir(0): "
read  c
 system ("cls")
 break
 case 2:
 print"Compras de Euro a Dolar: "
read compra[0]
 print"Compras de Yen a Dolar: "
 read compra[1]
 print"Compras de Yuan a Dolar: "
read compra[2];
 print" Compras de Pesos a Dolar: "
 read  compra[3]
 print"Regrasar al menu(1) salir(0): "
read c
 system ("cls")
 break
 case 3:
 MenuMonedas()
 print"Introducir cantidad de dolares a convertir: "
read cantidad
 print"eleccionar la divisa que desea: "
read m2
  system ("cls")
 switch(m2)
 {
 case 1:
 print"Dolar a Euro"
 VentaDolar(venta,cantidad,0)
 CompraDolar(compra,cantidad,0)
 print"La cantidad de ",cantidad," dolares:"
 print"nVenta ",VentaDolar(venta,cantidad,0)," Euros
 print"Compra ",CompraDolar(compra,cantidad,0)," Euros
 print"Regrasar al menu(1) salir(0): "
read c
  system ("cls")
 break
case 2:
  print""Dolar a Yen"
 VentaDolar(venta, cantidad,1)
 CompraDolar(compra, cantidad,1)
  print"La cantidad de ",cantidad," dolares:"
  print"Venta  ",VentaDolar(venta, cantidad,1)," Yens
 print"Compra ",CompraDolar(compra, cantidad,1)," Yens
 print"Regrasar al menu(1) salir(0): "
read c
system ("cls")
  break
 case 3:
 print"Dolar a Yuan"<<endl;
 VentaDolar(venta,cantidad,2)
 CompraDolar(compra,cantidad,2)
 print"La cantidad de ",cantidad," dolares:"
 print"venta ",VentaDolar(venta,cantidad,2)" 
 print"compra ",CompraDolar(venta,cantidad,2)," Yuans
 print"Regrasar al menu(1) salir(0): "
read c
  system ("cls")
 break
 case 4:
 print"Dolar a Pesos"
  print"La cantidad de ",cantidad," dolares:"
  print"Venta ",VentaDolar(venta,cantidad,3)," Pesos"
 print"Compra  ",CompraDolar(compra,cantidad,3)," Pesos;
 print"Regrasar al menu(1) salir(0): "
read c
 system ("cls")
 break
 }
 break
 }
 }
while(c==1)
-Fin 
 }
 void MenuPrincipal()
 {
  print"1)Inicializar compra de monedas."
  print"2)Inicializar venta de monedas."
  print"3)Convercion de monedas."
 print"4)Fin del programa "
 print
 print"Eliga la transaccion "
}
 void MenuMonedas()
 {
 print"Diferentes  divisas"
 print
 print"1) Euros"
  print"2) Yen "
 print"3) Yuan"
 print"4) Pesos Mexicanos"<<endl
print
 print"Tipo de moneda: "
 }
 float VentaDolar(float v[4], float dolares, int i)
 {return dolares*v[i]
 }
 float CompraDolar(float c[4], float dolares, int i)
 {
 return dolares*c[i]
 }

Problema 5.
a)Escriba una plantilla llamada funcion  pantalla() que despliegue el valor  de un argumento unico que se le trnsmita el llamar la  funcion
b)Escriba una plantilla de funcion llamado maximo() que encuentre el valor maximo cuando se ingtresan  3  datos 
c)Escriba una  funcion que  calcule  el cuadrado de un numero ingresado
d)Escriba una funcion llamada entero que   encuentre el numero entero al ingresar un numero decimal.
Pseudo-codigo:
-Inicio
template <class T>
void pantalla(T valor)
template <class T>
T maximo(T n1, T n2, T n3)
template <class T>
T cuadrado(T numero)
template <class T>
Entero  (T numero)
{real  valor,d1,d2,d3
print"A) "
print"Introsca un dato= "
read valor
print"Valor= "
pantalla(valor)
print"B)"
print"Introduce 3 datos= "
print"1.- "
read d1
print"2.- "
read d2
print"3.- "
read d3
print,Dato mayor= ",maximo(d1,d2,d3)
print"C)"
print"Introduce un valor= "
read valor
print"Su cuadrado es =",cuadrado(valor)
print"D)"
print"Introduce un numero con punto decimal = "
read valor
print"su entero es= ",entero(valor)
-Fin
}
 
template <class T>
void pantalla(T valor)
{
print valor
}
 
template <class T>
T maximo(T n1,T n2,T n3)
{
if (n1>n2&&n1>n3){return n1
}
else
{
if (n2>n1&&n2>n3){return n2
}
else
{
return n3
}}}
template <class T>
T cuadrado(T num)
{
return num*num
}
 
template <class T>
int entero(T num)
{
return int(num)
}






No hay comentarios:

Publicar un comentario