Problema 1
/* Problema 1 Practica 12
Hector Leyva Serrano 11211542 */
Codigo en C++
#include <iostream.h>#include <conio.h>
#include <stdio.h>
#include <math.h>
void revisar(int n1,float n2, double n3);
int encontrarabs(int a);
template <class t>
void mult(t num1, t num2);
int funpot( int valor);
void main()
{ int n1,n,num2,num1,valor,a;
float n2,resultado;
double n3;
revisar(n1,n2,n3);
cout<<"El valor absoluto es "<<encontrarabs(a)<<endl;
cout<<"Introduce valores para la multiplicacion"<<endl;
cout<<"Valor 1= ";
cin>>num1;
cout<<"Valor 2= ";
cin>>num2;
cout<<"El producto de la multiplicacion es "<<(num1*num2)<<endl;
funpot(valor);
getch(); }
void revisar(int n1,float n2, double n3)
{ cout<<"Introduce valores para los siguientes datos."<<endl;
cout<<"Valor entero ";
cin>>n1;
cout<<"Valor flotante ";
cin>>n2;
cout<<"Valor de doble precision ";
cin>>n3; }
int encontrarabs(int a)
{ cout<<"Da el valor de un numero "<endl;
cin>>a;
if(a<0)
{ return -a;
} else
{ return a;
}}
template <class t>
void mult(t num1, t num2)
{ cout<<"Introduce valores para la multiplicacion"<<endl;
cout<<"Valor 1= "<<num1<<endl;
cout<<"Valor 2= "<<num2<<endl;
cout<<"El producto de la multiplicacion es "<<(num1*num2); }
int funpot( int valor)
{ int resultado;
cout<<"\nValor deseado ";
cin>>valor;
if(valor<0)
{ valor=(valor)*(-1);
} valor=valor;
resultado=pow(valor,valor);
cout<<"El resultado es: "<<resultado; }
Seudocodigo
Inicio de programa{ n1,n,num2,num1,valor,a int
n2,resultado float
n3 double
revisar(n1,n2,n3)
print "El valor absoluto es ",encontrarabs(a)
print "Introduce valores para la multiplicacion"
print "Valor 1= "
read num1
print "Valor 2= "
read num2
print "El producto de la multiplicacion es ",(num1*num2)
funpot(valor)
Fin de programa
void revisar(int n1,float n2, double n3)
{ print "Introduce valores para los siguientes datos."
print "Valor entero "
read n1
print "Valor flotante "
read n2
print "Valor de doble precision "
read n3 }
int encontrarabs(int a)
{ print "Da el valor de un numero "
read a
if(a<0)
{ return -a
} else
{ return a
}}
template <class t>
void mult(t num1, t num2)
{ print "Introduce valores para la multiplicacion"<<endl;
print "Valor 1= ",num1
print "Valor 2= ",num2
print "El producto de la multiplicacion es ",(num1*num2) }
int funpot( int valor)
{ resultado int
print "\nValor deseado "
read valor
if(valor<0)
{ valor=(valor)*(-1)
} valor=valor
resultado=pow(valor,valor)
print "El resultado es: ",resultado }
Problema 2
/*Practica 12 Problema 2
Hector Leyva Serrano 11211542 */
Codigo en C++
#include <stdio.h>
#include <iostream.h>
#include <conio.h>
void datosiniciales(char nombres[3][25],float saldoinicial[3]);
void iniciarmov(float m[20]);
void movimientos(float saldoinicial[3],float m1[20],float m2[20],float m3[20]);
void desplegar(float saldoinicial[3],char nombres[3][25],float m1[20],float m2[20],float m3[20],int numcli);
void main()
{ float si[3], mov1[20], mov2[20], mov3[20];
char name[3][25], otro;
datosiniciales(name,si);
iniciarmov(mov1);
iniciarmov(mov2);
iniciarmov(mov3);
do
{ movimientos(si, mov1, mov2, mov3);
cout<<"Otro movimiento(s/n)= ";
cin>>otro; }
while(otro=='s' || otro=='S');
desplegar(si,name,mov1,mov2,mov3,1);
desplegar(si,name,mov1,mov2,mov3,2);
desplegar(si,name,mov1,mov2,mov3,3);
getch(); }
void datosiniciales(char nombres[3][25],float saldoinicial[3])
{ int i;
for(i=0; i<3; i++)
{ cout<<"Nombre del cliente "<<(i+1)<<" = ";
gets(nombres[i]);
cout<<"Saldo inicial= ";
cin>>saldoinicial[i]; }}
void iniciarmov(float m[20])
{ int i=0;
for(i=0; i<20; i++)
{ m[i]=0.0;
}}
void movimientos(float saldoinicial[3],float m1[20],float m2[20],float m3[20])
{ float cantidad, saldo;
int op, indice=0, numcli;
cout<<"Numero de cliente= ";
cin>>numcli;
cout<<"Tipo de operacion 1)Deposito 2)Retiro ";
cin>>op;
cout<<"Cantidad de dinero= ";
cin>>cantidad;
switch(numcli)
{
case 1: saldo=saldoinicial[numcli-1];
indice=0;
while(m1[indice]>0||m1[indice]<0)
{ indice++;
saldo=saldo+m1[indice]; }
switch(op)
{
case 1:
m1[indice]=cantidad;
saldo=saldo+cantidad;
break;
case 2:
if(cantidad<=saldo)
{ m1[indice]=-cantidad;
saldo=saldo-cantidad;
} else
{ cout<<"Fondos insuficientes\n";
} break;
default:
{ cout<<"Error en tipo de operacion\n";
}}
case 2: saldo=saldoinicial[numcli-1];
indice=0;
while(m2[indice]>0||m2[indice]<0)
{ indice++;
saldo=saldo+m2[indice]; }
switch(op)
{
case 1:
m2[indice]=cantidad;
saldo=saldo+cantidad;
break;
case 2: if(cantidad<=saldo)
{ m2[indice]=-cantidad;
saldo=saldo-cantidad;
} else
{ cout<<"Fondos insuficientes\n";
} break;
default:
{ cout<<"Error en tipo de operacion\n"; }}
case 3: saldo=saldoinicial[numcli-1];
indice=0;
while(m3[indice]>0||m3[indice]<0)
{ indice++;
saldo=saldo+m3[indice]; }
switch(op)
{
case 1:
m3[indice]=cantidad;
saldo=saldo+cantidad;
break;
case 2:
if(cantidad<=saldo)
{ m3[indice]=-cantidad;
saldo=saldo-cantidad;
} else
{ cout<<"Fondos insuficientes\n";
} break;
default:
{ cout<<"Error en tipo de operacion\n";
}}}}
void desplegar(float saldoinicial[3],char nombres[3][25],float m1[20],float m2[20],float m3[20],int numcli)
{
float totaldep=0.0, totret=0, saldo=0;
int i;
cout<<"Cuentahabiente: "<<nombres[numcli-1]<<endl;
cout<<"Saldo inicial: "<<saldoinicial[numcli-1]<<endl;
cout<<"Movimiento\t Deposito\t\t Retiro\t Saldo\n";
switch(numcli)
{
case 1: i=0, saldo=saldoinicial[numcli-1];
while (m1[i]>0 || m1[i]<0 || m1[i]!=0)
{ saldo+=m1[i];
cout<<(i+1)<<"\t\t\t";
if(m1[i]>0)
{ totaldep +=m1[i];
cout<<m1[i]<<"\t\t\t"<<saldo<<endl;
} else
{ totret +=m1[i];
cout<<"\t\t"<<m1[i]<<"\t"<<saldo<<endl;
} i++;
} cout<<"Totales\t\t\t"<<totaldep<<"\t\t"<<totret<<"\t"<<saldo<<endl;
break;
case 2: i=0, saldo=saldoinicial[numcli-1];
while (m2[i]>0 || m2[i]<0 || m2[i]!=0)
{ saldo+=m2[i];
cout<<(i+1)<<"\t\t\t";
if(m2[i]>0)
{ totaldep +=m2[i];
cout<<m2[i]<<"\t\t\t"<<saldo<<endl;
} else
{ totret +=m2[i];
cout<<"\t\t"<<m2[i]<<"\t"<<saldo<<endl;
} i++;
} cout<<"Totales\t\t\t"<<totaldep<<"\t\t"<<totret<<"\t"<<saldo<<endl;
break;
case 3: i=0, saldo=saldoinicial[numcli-1];
while (m3[i]>0 || m3[i]<0 || m3[i]!=0)
{ saldo+=m3[i];
cout<<(i+1)<<"\t\t\t";
if(m3[i]>0)
{ totaldep +=m3[i];
cout<<m3[i]<<"\t\t\t"<<saldo<<endl;
} else
{ totret +=m3[i];
cout<<"\t\t"<<m3[i]<<"\t"<<saldo<<endl;
} i++;
} cout<<"Totales\t\t\t"<<totaldep<<"\t\t"<<totret<<"\t"<<saldo<<endl;
break; }}
Seudocodigo
Inicio de programa
{ si[3], mov1[20], mov2[20], mov3[20] float
char name[3][25], otro
datosiniciales(name,si)
iniciarmov(mov1)
iniciarmov(mov2)
iniciarmov(mov3)
do
{ movimientos(si, mov1, mov2, mov3);
print "Otro movimiento(s/n)= "
read otro }
while(otro=='s' || otro=='S')
desplegar(si,name,mov1,mov2,mov3,1)
desplegar(si,name,mov1,mov2,mov3,2)
desplegar(si,name,mov1,mov2,mov3,3)
Fin de programa
void datosiniciales(char nombres[3][25],float saldoinicial[3])
{ i int
for(i=0; i<3; i++)
{ print "Nombre del cliente ",(i+1)," = "
gets(nombres[i])
print "Saldo inicial= "
read saldoinicial[i] }}
void iniciarmov(float m[20])
{ i=0 int
for(i=0; i<20; i++)
{ m[i]=0.0
}}
void movimientos(float saldoinicial[3],float m1[20],float m2[20],float m3[20])
{ cantidad, saldo float
op, indice=0, numcli int
print "Numero de cliente= "
read numcli
print "Tipo de operacion 1)Deposito 2)Retiro "
read op
print "Cantidad de dinero= "
read cantidad
switch(numcli)
{
case 1: saldo=saldoinicial[numcli-1]
indice=0
while(m1[indice]>0||m1[indice]<0)
{ indice++
saldo=saldo+m1[indice] }
switch(op)
{
case 1:
m1[indice]=cantidad
saldo=saldo+cantidad
break
case 2:
if(cantidad<=saldo)
{ m1[indice]=-cantidad
saldo=saldo-cantidad
} else
{ print "Fondos insuficientes\n"
} break
default:
{ print "Error en tipo de operacion\n"
}}
case 2: saldo=saldoinicial[numcli-1]
indice=0
while(m2[indice]>0||m2[indice]<0)
{ indice++
saldo=saldo+m2[indice] }
switch(op)
{
case 1:
m2[indice]=cantidad
saldo=saldo+cantidad
break
case 2: if(cantidad<=saldo)
{ m2[indice]=-cantidad
saldo=saldo-cantidad
} else
{ print "Fondos insuficientes\n"
} break
default:
{ print "Error en tipo de operacion\n" }}
case 3: saldo=saldoinicial[numcli-1]
indice=0
while(m3[indice]>0||m3[indice]<0)
{ indice++
saldo=saldo+m3[indice] }
switch(op)
{
case 1:
m3[indice]=cantidad
saldo=saldo+cantidad
break
case 2:
if(cantidad<=saldo)
{ m3[indice]=-cantidad
saldo=saldo-cantidad
} else
{ print "Fondos insuficientes\n"
} break
default:
{ print "Error en tipo de operacion\n"
}}}}
void desplegar(float saldoinicial[3],char nombres[3][25],float m1[20],float m2[20],float m3[20],int numcli)
{
totaldep=0.0, totret=0, saldo=0 float
i int
print "Cuentahabiente: "<<nombres[numcli-1]
print "Saldo inicial: "<<saldoinicial[numcli-1]
print "Movimiento\t Deposito\t\t Retiro\t Saldo\n"
switch(numcli)
{
case 1: i=0, saldo=saldoinicial[numcli-1]
while (m1[i]>0 || m1[i]<0 || m1[i]!=0)
{ saldo+=m1[i]
print (i+1),"\t\t\t"
if(m1[i]>0)
{ totaldep +=m1[i]
print m1[i],"\t\t\t",saldo
} else
{ totret +=m1[i]
print "\t\t",m1[i],"\t",saldo
} i++
} print "Totales\t\t\t",totaldep,"\t\t",totret,"\t",saldo
break
case 2: i=0, saldo=saldoinicial[numcli-1]
while (m2[i]>0 || m2[i]<0 || m2[i]!=0)
{ saldo+=m2[i]
print (i+1),"\t\t\t"
if(m2[i]>0)
{ totaldep +=m2[i]
print m2[i],"\t\t\t",saldo
} else
{ totret +=m2[i]
print "\t\t",m2[i],"\t",saldo
} i++
} print "Totales\t\t\t",totaldep,"\t\t",totret,"\t",saldo
break
case 3: i=0, saldo=saldoinicial[numcli-1]
while (m3[i]>0 || m3[i]<0 || m3[i]!=0)
{ saldo+=m3[i]
print (i+1),"\t\t\t"
if(m3[i]>0)
{ totaldep +=m3[i]
print m3[i],"\t\t\t",saldo,
} else
{ totret +=m3[i]
print "\t\t",m3[i],"\t",saldo
} i++
} print "Totales\t\t\t",totaldep,"\t\t",totret,"\t",saldo
break }}
No hay comentarios:
Publicar un comentario