Sei sulla pagina 1di 41

Practica N 2

UNMSM

Erick Edson Pasache Lopera

UNIVERSIDAD NACIONAL MAYOR DE SAN MARCOS Curso: Algortmica I Practica N 2 Fecha:21 SETIEMBRE 2011 En la solucin de los siguientes problemas considere: Anlisis, construccin del algoritmo (diagrama de flujo y pseudocdigo), verificacin del algoritmo o prueba de escritorio y codifique en C++. 1.- Calcular el pago semanal de un trabajador. Los datos a ingresar son: Total de horas trabajadas y el pago por hora. Si el total de horas trabajadas es mayor a 40 la diferencia se considera como horas extras y se paga un 50% ms que una hora normal. Si el sueldo bruto es mayor a s/. 500.00, se descuenta un 10% en caso contrario el descuento es 0. #include <cstdlib> #include <iostream> using namespace std; int main(int argc, char *argv[]) { cout<<endl; cout<<" PAGO DE PLANILLAS"; cout<<endl<<endl; int h,p,S,E,B,D; cout<<"Ingrese el pago por horas trabajadas: "; cin>>h; cout<<endl; cout<<"Ingrese el total de horas trabajadas en la semana: "; cin>>p; cout<<endl<<endl; S=p*h; if (40<h) {E=(h-40)*p*1.5; cout<<"Total de horas extra: "<<(h-40)<<endl<<endl; cout<<"Pago por horas extras: "<<E<<endl<<endl; B=S+E; cout<<"sueldo bruto: "<<B<<endl<<endl; if (B<=500) {D=0; cout<<"Descuentos por planilla: "<<D<<endl<<endl; cout<<"Total a cobrar: "<<B<<endl<<endl;} else {D=B*0.1;

Ing Civil

erick_20_05@hotmail.com.

Practica N 2

UNMSM

Erick Edson Pasache Lopera

cout<<"Descuentos por planilla: "<<D<<endl<<endl; cout<<"Total a cobrar: "<<(B-D)<<endl<<endl; } } else {E=0; cout<<"Total de horas extra: "<<0<<endl<<endl; cout<<"Pago por horas extras: "<<E<<endl<<endl; B=S+E; cout<<"sueldo bruto: "<<B<<endl<<endl; if (B<=500) {D=0; cout<<"Descuentos por planilla: "<<D<<endl<<endl; cout<<"Total a cobrar: "<<B<<endl<<endl;} else {D=B*0.1; cout<<"Descuentos por planilla: "<<D<<endl<<endl; cout<<"Total a cobrar: "<<(B-D)<<endl<<endl; } } system("PAUSE"); return EXIT_SUCCESS; } 2.- A un trabajador le descuentan de su sueldo el 10% si su sueldo es menor o igual a 1000, por encima de 1000 hasta 2000 el 5% del adicional, y por encima de 2000 el 3% del adicional. Calcular el descuento y sueldo neto que recibe el trabajador dado un sueldo, #include <cstdlib> #include <iostream> using namespace std; int main(int argc, char *argv[]) { int S; float A,B,C; cout<<" DESCUENTOS"; cout<<endl<<endl<<endl; cout<<"ingrese el suledo del trabajador: "; cin>>S; cout<<endl; if (S<=1000) {A=S*(0.1); cout<<"El descuento sera: "<<A<<endl;} else Ing Civil 2 erick_20_05@hotmail.com.

Practica N 2 {

UNMSM

Erick Edson Pasache Lopera

if (1000<(S)<2000) {B=S*(0.1)+(S*(0.1))*0.05; cout<<"El descuento sera: "<<B<<endl;} else { if (2000<S) {C=S*(0.1)+(S*(0.1))*0.05+((S*0.1)*0.05)*0.03; cout<<"El descuento sera: "<<C<<endl;} } } cout<<endl<<endl; system("PAUSE"); return EXIT_SUCCESS; } 3.- Ordene de mayor a menor 3 nmeros ingresados por teclado #include <cstdlib> #include <iostream> using namespace std; int main(int argc, char *argv[]) { cout<<endl; cout<<" ORDENANDO NUMEROS"; cout<<endl<<endl; int a,b,c; cout<<"Ingrese el Primer numero: "; cin>>a; cout<<endl; cout<<"Ingrese el Segundo numero: "; cin>>b; cout<<endl; cout<<"Ingrese el Tercer numero: "; cin>>c; cout<<endl; if ((a>b) && (b>c)) {cout<<"El orden sera: "<<a<<" ; "<<b<<" ; "<<c<<endl;} if ((a>c) && (c>b)) {cout<<"El orden sera: "<<a<<" ; "<<c<<" ; "<<b<<endl;} if ((c>b) && (b>a)) {cout<<"El orden sera: "<<c<<" ; "<<b<<" ; "<<a<<endl;} if ((c>a) && (a>b)) {cout<<"El orden sera: "<<c<<" ; "<<a<<" ; "<<b<<endl;} Ing Civil 3 erick_20_05@hotmail.com.

Practica N 2

UNMSM

Erick Edson Pasache Lopera

if ((b>a) && (a>c)) {cout<<"El orden sera: "<<b<<" ; "<<a<<" ; "<<c<<endl;} if ((b>c) && (c>a)) {cout<<"El orden sera: "<<b<<" ; "<<c<<" ; "<<a<<endl;} system("PAUSE"); return EXIT_SUCCESS; }

4.- Dado un tiempo en minutos, calcular los das, horas y minutos que #include <cstdlib> #include <iostream> using namespace std; int main(int argc, char *argv[]) { cout<<"convertidor de tiempo"<<endl; int m; float h,d; cout<<" Ingresar el tiempo en minutos: "; cin>>m; h=m/60; d=h/24; cout<<" Ingresar el tiempo en minutos: "<<m<<" minutos "<<endl; cout<<" Ingresar el tiempo en horas: "<<h<<" horas "<<endl; cout<<" Ingresar el tiempo en dias: "<<d<<" dias "<<endl; system("PAUSE"); return EXIT_SUCCESS; }

le corresponden.

5.- Dados tres datos enteros positivos, que representen las longitudes de un posible triangulo, determine si los datos corresponden a un triangulo. En caso afirmativo, escriba si el triangulo es equiltero, issceles o escaleno. Calcule adems su rea. #include <cstdlib> #include <iostream> #include<math.h> using namespace std; Ing Civil 4 erick_20_05@hotmail.com.

Practica N 2

UNMSM

Erick Edson Pasache Lopera

int main(int argc, char *argv[]) { cout<<"triangulos"; int a,b,c; float P,A; cout<<endl<<endl; cout<<"Ingrese el primer lado: "; cin>>a; cout<<"Ingrese el segundo lado: "; cin>>b; cout<<"Ingrese el tercer lado lado: "; cin>>c; P=(a+b+c)/2; A=pow(P*(P-a)*(P-b)*(P-c),0.5); if (abs(a-b)<c && c<(a+b)) {if(a==b&&a==c&&b==c) {cout<<"El triangulo es equilatero"<<endl; cout<<"El area es: "<<A<<endl;} else { if (a==b||a==c||b==c) {cout<<"El triangulo es Isosceles"<<endl; cout<<"El area es: "<<A<<endl;} else {cout<<"El triangulo es Escaleno"<<endl; cout<<"El area es: "<<A<<endl;} } } else cout<<"El triangulo no existe"<<endl; system("PAUSE"); return EXIT_SUCCESS; }

6.- Dada la hora del da en horas, minutos y segundos encuentre la hora del siguiente segundo. #include <cstdlib> #include <iostream> Ing Civil 5 erick_20_05@hotmail.com.

Practica N 2

UNMSM

Erick Edson Pasache Lopera

using namespace std; int main(int argc, char *argv[]) { float h,m,s,a,b,c; cout<<" Cual hora del siguiente segundo?"<<endl; cout<<"Ingrese el numero de horas: "; cin>>h; cout<<"Ingrese el numero de minutos: "; cin>>m; cout<<"Ingrese el numero de segundo: "; cin>>s; if(m<59){ a=s+1; cout<<"La hora es: "<<h<<":"<<m<<":"<<a; cout<<endl; } if(m==59){ if(m==59){ b=h+1; cout<<"La hora es: "<<b<<":00:00"; cout<<endl; } else{ c=m+1; cout<<"La hora es: "<<h<<":"<<c<<":00"; cout<<endl; } } system("PAUSE"); return EXIT_SUCCESS; }

7.- Una compaa de alquiler de autos emite la factura de sus clientes teniendo en cuenta la distancia recorrida, si la distancia no rebasa los 300 km., se cobra una tarifa fija de S/.250, si la distancia recorrida es mayor a 300 km. y hasta 1000 km. Se cobra la tarifa fija ms el exceso de kilmetros a razn de S/.30 por km. y si la distancia recorrida es mayor a 1000 km., la compaa cobra la tarifa fija ms los kms. recorridos entre 300 y 1000 a razn de S/. 30, y S/.20 para las distancias mayores de 1000 km. Calcular el monto que pagar un cliente. #include <cstdlib> Ing Civil 6 erick_20_05@hotmail.com.

Practica N 2 #include <iostream> using namespace std;

UNMSM

Erick Edson Pasache Lopera

int main(int argc, char *argv[]) { int D; float A,B,C; cout<<" Alquiler de autos"; cout<<endl<<endl<<endl; cout<<"Ingrese la distanica recorrida (Km.): "; cin>>D; A=250; B=(D-300)*20 + A; C=B+(D-1000)*(10); cout<<endl; if (D<=300) { cout<<"El Pago total por el alquiler sera: "<<A<<" s/. "<<endl;} else { if (300<D && D<=1000) { cout<<"El Pago total por el alquiler sera: "<<B<<" s/. "<<endl;;} else { cout<<"El Pago total por el alquiler sera: "<<C<<" s/. "<<endl;} } cout<<endl<<endl; system("PAUSE"); return EXIT_SUCCESS; } 8.- Una empresa registra el sexo, edad y estado civil de sus empleados a travs de un nmero entero positivo de cuatro cifras de acuerdo a lo siguiente: la primera cifra de la izquierda representa el estado civil (1 para soltero, 2 para casado, 3 para viudo y 4 para divorciado), las siguientes dos cifras representan la edad y la tercera cifra representa el sexo (1 para femenino y 2 para masculino). Disee un programa que determine el estado civil, edad y sexo de un empleado conociendo el nmero que empaqueta dicha informacin. #include <cstdlib> #include <iostream> using namespace std;

Ing Civil

erick_20_05@hotmail.com.

Practica N 2

UNMSM

Erick Edson Pasache Lopera

int main(int argc, char *argv[]) { int x,y,z; cout<<endl; cout<<"Registro del sexo, edad y estado civil de los empleados "<<endl<<endl; cout<<"Ingrese el numero: "; cin>>x>>y>>z; cout<<endl<<endl; if(x==1 && z==1){ cout<<"El estado civil es soltero"<<endl; cout<<"La edad es: "<<y; cout<<endl; cout<<"El sexo es femenino"<<endl; } if(x==2 && z==1){ cout<<"El estado civil es casado"<<endl; cout<<"La edad es: "<<y; cout<<endl; cout<<"El sexo es femenino"<<endl; } if(x==3 && z==1){ cout<<"El estado civil es viudo"<<endl; cout<<"La edad es: "<<y; cout<<endl; cout<<"El sexo es femenino"<<endl; } if(x==4 && z==1){ cout<<"El estado civil es divorciado"<<endl; cout<<"La edad es: "<<y; cout<<endl; cout<<"El sexo es femenino"<<endl; } if(x==1 && z==2){ cout<<"El estado civil es soltero"<<endl; cout<<"La edad es: "<<y; cout<<endl; cout<<"El sexo es masculino"<<endl; } if(x==2 && z==2){ cout<<"El estado civil es casado"<<endl; cout<<"La edad es: "<<y; cout<<endl; cout<<"El sexo es masculino"<<endl; } if(x==3 && z==2){ cout<<"El estado civil es viudo"<<endl; cout<<"La edad es: "<<y; Ing Civil 8 erick_20_05@hotmail.com.

Practica N 2

UNMSM

Erick Edson Pasache Lopera

cout<<endl; cout<<"El sexo es masculino"<<endl; } if(x==4 && z==2){ cout<<"El estado civil es divorciado"<<endl; cout<<"La edad es: "<<y; cout<<endl; cout<<"El sexo es masculino"<<endl; } if(x>4 || z>2){ cout<<"El numero ingresado no es valido"<<endl; } system("PAUSE"); return EXIT_SUCCESS; } 9.- Calcular la comisin sobre las ventas totales de un empleado, sabiendo que el empleado no recibe comisin si su venta es hasta S/.150, si la venta es superior a S/.150 y menor o igual a S/.400 el empleado recibe una comisin del 10% de las ventas y si las ventas son mayores a 400, entonces la comisin es de S/.50 ms el 9% de las ventas. #include <cstdlib> #include <iostream> using namespace std; int main(int argc, char *argv[]) { cout<<" COMISION DE TRABAJADORES"; cout<<endl<<endl; int V; float C; cout<<"ingrese el monto de ventas: "; cin>>V; cout<<endl; if (V<=150) {C=0; cout<<"Comision: "<<C<<endl<<endl; cout<<" Ventas insuficientes ";} else {if ((150<V) && (V<=400)) {C=V*0.1; cout<<"La comision sera: "<<C<<endl;} else {C=(V*0.09)+50; cout<<"La comision sera: "<<C<<endl;} Ing Civil 9 erick_20_05@hotmail.com.

Practica N 2 } system("PAUSE"); return EXIT_SUCCESS; }

UNMSM

Erick Edson Pasache Lopera

10.- Dada la ecuacin de la recta y = mx + c, y la ecuacin de la circunferencia (x-a) + (y-b) = r , determinar los puntos de interseccin de la recta con la circunferencia, y analizar si la recta es secante o tangente a la circunferencia. #include <cstdlib> #include <iostream> #include<math.h> using namespace std; int main(int argc, char *argv[]) { float m,a1,a2,a,b,c,r,D; cout<<endl; cout<<" Relacion entre la recta y la Circunferencia"<<endl<<endl; cout<<"Ingrese el la pendiente de la recta: "; cin>>m; cout<<endl; cout<<"Ingrese un punto por donde pasa dicha recta: "; cin>>a1; cin>>a2; cout<<endl; cout<<"Ingrese las coordendas del centro de la circunferencia: "; cin>>a; cin>>b; cout<<endl; cout<<"Ingrese el radio del circulo: "<<endl; cin>>r; cout<<endl; c=(a2)-(m*a1); D=pow((2*m*c)-(2*m*b)-(2*a),2)-4*((a*a)+(c*c)+(b*b)-(2*c*b)-(r*r))*((m*m)+1); if ( D<0 ) {cout<<"no exite intercepcion entre la circunferancia y la recta";} if ( D==0 ) {cout<<"la recta es tangente a la circunferencia";} if ( D>0 ) {cout<<"La recta es secante a la circunferencia";} system("PAUSE"); return EXIT_SUCCESS; } Ing Civil erick_20_05@hotmail.com. 10

Practica N 2

UNMSM

Erick Edson Pasache Lopera

11.- Se necesita un sistema para un supermercado, en el cual si el monto de la compra del cliente es mayor de $5000 se le har un descuento del 30%, si es menor o igual a $5000 pero mayor que $3000 ser del 20%, si no rebasa los $3000 pero si los $1000 la rebaja efectiva es del 10% y en caso de que no rebase los $1000 no tendr beneficio. #include <cstdlib> #include <iostream> using namespace std; int main(int argc, char *argv[]) { cout<<" DESCUENTOS POR COMPRAS"; cout<<endl<<endl<<endl; int M; float D; cout<<"Ingrese el monto de la compra ($): "; cin>>M; cout<<endl; if (M<=1000) {D=0; cout<<"No sujeto a descuentos "<<D<<endl<<endl;} else {if ((1000<M) && (M<=3000)) {D=M*0.1; cout<<"Su Descuento es: "<<D<<" $ "<<endl; cout<<endl;} else {if ((3000<M) && (M<=5000)) {D=M*0.2; cout<<"Su Descuento es: "<<D<<" $ "<<endl; cout<<endl;} else {D=M*0.3; cout<<"Su descuento es: "<<D<<" $ "<<endl; cout<<endl;} } } system("PAUSE"); return EXIT_SUCCESS; }

Ing Civil erick_20_05@hotmail.com.

11

Practica N 2

UNMSM

Erick Edson Pasache Lopera

12.- Calcular la utilidad que un trabajador recibe en el reparto anual de utilidades si este se le asigna como un porcentaje de su salario mensual que depende de su antigedad en la empresa de acuerdo con la sig. tabla: Tiempo Utilidad Menos de 1 ao 5 % del salario 1 ao o mas y menos de 2 aos 7% del salario 2 aos o mas y menos de 5 aos 10% del salario 5 aos o mas y menos de 10 aos 15% del salario 10 aos o mas 20% del salario #include <cstdlib> #include <iostream> using namespace std; int main(int argc, char *argv[]) { cout<<" PAGO DE UTILIDADES"; cout<<endl<<endl<<endl; int S,T,M; float D; cout<<"Ingrese el salario del trabajador (S/.): "; cin>>S; cout<<endl; cout<<"Ingrese el tiempo de servicio (AA:MM): "<<" "; cin>>T; cin>>M; cout<<endl; if (T==0) {if (M<12) {D=S*(0.05); cout<<"Pago por utilidad "<<D<<endl<<endl;} else {cout<<"tiempo invalido (12 meses = 1 ao)"<<endl<<endl;} } else {if ((1<=T) && (T<2)) {D=S*0.07; cout<<"Pago por utilidad "<<D<<" S/. "<<endl; cout<<endl;} else {if ((2<=T) && (T<5)) {D=S*0.1; cout<<"Pago por utilidad "<<D<<" S/. "<<endl; cout<<endl;} Ing Civil erick_20_05@hotmail.com. 12

Practica N 2

UNMSM

Erick Edson Pasache Lopera

else {if ((5<=T) && (T<10)) {D=S*0.15; cout<<"Pago por utilidad "<<D<<" S/. "<<endl; cout<<endl;} else {D=S*0.2; cout<<"Pago por utilidad: "<<D<<" S/. "<<endl; cout<<endl;} } } } system("PAUSE"); return EXIT_SUCCESS; }

13.- Dado un nmero entero; determinar si el mismo es par, impar o nulo. #include <cstdlib> #include <iostream> using namespace std; int main(int argc, char *argv[]) { cout<<" PAR O IMPAR ?"; cout<<endl<<endl; int N; cout<<"Ingrese un numero: "; cin>>N; if ( N==0 ) cout<<"el numero ingresado es nulo"<<endl; else {if ( N % 2 ==0 ) cout<<"Es un numero par"<<endl; else cout<<"Es un numero impar"<<endl; } system("PAUSE"); return EXIT_SUCCESS; }

Ing Civil erick_20_05@hotmail.com.

13

Practica N 2

UNMSM

Erick Edson Pasache Lopera

14.- Escribir un programa que determine si un ao es bisiesto. Un ao es bisiesto si es mltiplo de 4 (por ejemplo 1984). Los aos mltiplos de 100 no son bisiestos, salvo si ellos son tambin mltiplos de 400 (2000 es bisiesto, pero; 1800 no lo es) #include <cstdlib> #include <iostream> using namespace std; int main(int argc, char *argv[]) { cout<<" AO BISIESTO ?"; cout<<endl<<endl; int N; cout<<"Ingrese el ao: "; cin>>N; if ( N % 100 ==0 ) {if ( N % 400 ==0 ) cout<<"Es ao bisiesto"<<endl; else cout<<"No es ao bisiesto"<<endl;} else {if ( N % 4 ==0 ) cout<<"Es ao bisiesto"<<endl; else cout<<"No es ao bisiesto"<<endl; } system("PAUSE"); return EXIT_SUCCESS; } 15.- Elaborar un algoritmo en el que a partir de una fecha introducida por teclado con el formato Da, Mes Ao, se obtenga la fecha del da siguiente.. #include <cstdlib> #include <iostream> using namespace std; int main(int argc, char *argv[]) { int D,M,A,a,b,c,d,e,f,g,h,i; cout<<"Aplicacion para saber la fecha de maana"<<endl; cout<<"Ingrese la fecha actual (dd/mm/aaaa): "; cin>>D>>M>>A; if (D>=32 || M>=13) Ing Civil erick_20_05@hotmail.com. 14

Practica N 2

UNMSM {cout<<"Fecha Invalida......."; cout<<endl;}

Erick Edson Pasache Lopera

else{ if(M==4 || M==6 || M==9 || M==11){ if(D==30){ a=M+1; cout<<"La fecha es: "<<"1"<<" "<<a<<" "<<A; cout<<endl; } else{ b=D+1; cout<<"La fecha es: "<<b<<" "<<M<<" "<<A; cout<<endl; } } if(M==1 || M==3 || M==5 || M==7 || M==8 || M==10){ if(D==31){ c=M+1; cout<<"La fecha es: "<<"1"<<" "<<c<<" "<<A; cout<<endl; } else{ d=D+1; cout<<"La fecha es: "<<d<<" "<<M<<" "<<A; cout<<endl; } } if(M==12){ if(D==31){ e=A+1; cout<<"La fecha es: "<<"1"<<" "<<"1"<<" "<<e; cout<<endl; } else{ f=D+1; cout<<"La fecha es: "<<f<<" "<<M<<" "<<A; cout<<endl; } } if(M==2){ if(D==29){ g=M+1; cout<<"La fecha es: "<<"1"<<" "<<g<<" "<<A; cout<<endl; } if(D==28){ if(A%4==0){ Ing Civil erick_20_05@hotmail.com. 15

Practica N 2

UNMSM

Erick Edson Pasache Lopera

if(A%100==0){ if(A%400==0){ cout<<"La fecha es: "<<"29"<<" "<<M<<" "<<A; cout<<endl; } else{ h=M+1; cout<<"La fecha es: "<<"1"<<" "<<h<<" "<<A; cout<<endl; } } else{ cout<<"La fecha es: "<<"29"<<" "<<M<<" "<<A; cout<<endl; } } else{ h=M+1; cout<<"La fecha es: "<<"1"<<" "<<h<<" "<<A; cout<<endl; } } if(D<28){ i=D+1; cout<<"La fecha es: "<<i<<" "<<M<<" "<<A; cout<<endl; } } } system("PAUSE"); return EXIT_SUCCESS; }

16.- La cantidad de das transcurridos entre dos fechas puede calcularse transformndolas en das Julianos. Esta es una convencin astronmica que representa cada fecha como el nmero de das transcurridos desde el 1 de enero de 4713 AC. Para transformar una fecha expresada como DIA, MES y AO en das Julianos se usa la siguiente frmula: DJ = ENT (365.25 * AP) + ENT (30.6001 * MP) + DIA + 1720982 donde DJ es el da Juliano, y AP y MP son dos constantes que se obtienen como sigue: Si MES = 1 2: AP = AO 1 MP = MES + 13 Si MES > 2: AP = AO MP = MES + 1 La cantidad de das entre dos fechas es igual a la diferencia entre los respectivos das Julianos: das = (da Juliano 2) - (da Juliano 1) Ing Civil erick_20_05@hotmail.com. 16

Practica N 2

UNMSM

Erick Edson Pasache Lopera

Preparar un programa para ingresar las dos fechas como DIA1, MES1, AO1, y DIA2, MES2, AO2 respectivamente, y muestre la cantidad de das transcurridos entre ambas. #include <cstdlib> #include <iostream> #include <math.h> using namespace std; int main(int argc, char *argv[]) { int x,y,z,a,b,c,d,f,g,e,A,B,C,D,E,F,h; cout<<"Calculando de la cantidad de dias transcurridos entre dos fechas"<<endl<<endl; cout<<"Ingrese la Primera fecha: "; cin>>x>>y>>z; cout<<endl; cout<<"Ingrese la Segunda fecha: "; cin>>a>>b>>c; cout<<endl; if(y==1 || y==2){ A=z-1; B=y+13; d=365.25*A; e=30.6001*B; C=d+e+x+1720982; } if(y>2){ A==z; B=y+1; d=365.25*A; e=30.6001*B; C=d+e+x+1720982; } if(b==1 || b==2){ D=c-1; D=b+13; f=365.25*D; g=30.6001*D; F=f+g+x+1720982; } if(b>2){ D==c; E=b+1; f=365.25*D; g=30.6001*E; F=f+g+x+1720982; Ing Civil erick_20_05@hotmail.com. 17

Practica N 2

UNMSM

Erick Edson Pasache Lopera

} h=abs(C-F); cout<<"La cantidad de dias transcurridos entre las dos fechas es: "<<h; cout<<endl; system("PAUSE"); return EXIT_SUCCESS; }

17.- Determinar la cantidad de dinero que recibir un trabajador por concepto de las horas extras trabajadas en una empresa, sabiendo que cuando las horas de trabajo exceden de 40, el resto se consideran horas extras y que estas se pagan al doble de una hora normal cuando no exceden de 8; si las horas extras exceden de 8 se pagan las primeras 8 al doble de lo que se pagan las horas normales y el resto al triple. #include <cstdlib> #include <iostream> using namespace std; int main(int argc, char *argv[]) { float h,p,a,b,c; cout<<" Horas Extras"<<endl; cout<<"Ingrese la cantidad de horas trabajadas: "; cin>>h; cout<<"Ingrese el pago en un hora trabajada: "; cin>>p; if(h>40){ if((h-40)<=8){ a=(40*p)+((h-40)*2*p); cout<<"La cantidad dinero que recibira el trabajador es: "<<a; cout<<endl; } else{ b=(40*p)+(8*2*p)+((h-48)*3*p); cout<<"La cantidad de dinero que recibira el trabajador es: "<<b; cout<<endl; } } else{ c=h*p; cout<<"La cantidad de dinero que recibira el trabajador es: "<<c; cout<<endl; Ing Civil erick_20_05@hotmail.com. 18

Practica N 2 } system("PAUSE"); return EXIT_SUCCESS; }

UNMSM

Erick Edson Pasache Lopera

18.- En una tienda de descuento se efecta una promocin en la cual se hace un descuento sobre el valor de la compra total segn el color de la bolita que el cliente saque al pagar en caja. Si la bolita es de color blanco no se le har descuento alguno, si es verde se le har un 10% de descuento, si es amarilla un 25%, si es azul un 50% y si es roja un 100%. Determinar la cantidad final que el cliente deber pagar por su compra. se sabe que solo hay bolitas de los colores mencionados. #include <cstdlib> #include <iostream> using namespace std; int main(int argc, char *argv[]) { float x,a,b,c; int y; cout<<" JUEGO DE LA BOLITA (DESCUENTOS)"<<endl; cout<<"Ingrese el valor de la compra: "; cin>>x; cout<<"1-blanco"<<endl; cout<<"2-verde"<<endl; cout<<"3-amarilla"<<endl; cout<<"4-azul"<<endl; cout<<"5-roja"<<endl; cout<<"Ingrese la opcion de su color de bolita: "; cin>>y; switch(y){ case 1: cout<<"El costo a pagar es: "<<x; cout<<endl; break; case 2: a=(90*x)/100; cout<<"El costo a pagar es: "<<a; cout<<endl; break; case 3: b=(75*x)/100; cout<<"El costo a pagar es: "<<b; cout<<endl; break; case 4: c=(50*x)/100; cout<<"El costo a pagar es: "<<c; Ing Civil erick_20_05@hotmail.com. 19

Practica N 2

UNMSM

Erick Edson Pasache Lopera

cout<<endl; break; case 5: cout<<"La compra es GRATIS"; cout<<endl; break; default: cout<<"La opcion no existe"<<endl; } system("PAUSE"); return EXIT_SUCCESS; }

19.- Ingrese seis notas y calcule el promedio, considerando las 5 mejores notas. #include <cstdlib> #include <iostream> using namespace std; int main(int argc, char *argv[]) { float x,y,z,a,b,c,d,e,f,g,h,i; cout<<" Calculando el promedio de las 5 mejores notas "<<endl<<endl; cout<<"Ingrese las notas: "; cin>>x>>y>>z>>a>>b>>c; cout<<endl; if(x<=y && x<=z && x<=a && x<=b && x<=c){ d=(y+z+a+b+c)/5; cout<<"Promedio de las 5 mejores notas: "<<d; cout<<endl; } if(y<x && y<=z && y<=a && y<=b && y<=c){ e=(x+z+a+b+c)/5; cout<<"Promedio de las 5 mejores notas: "<<e; cout<<endl; } if(z<x && z<y && z<=a && z<=b && z<=c){ f=(x+y+a+b+c)/5; cout<<"Promedio de las 5 mejores notas: "<<f; cout<<endl; } if(a<x && a<y && a<z && a<=b && a<=c){ Ing Civil erick_20_05@hotmail.com. 20

Practica N 2

UNMSM

Erick Edson Pasache Lopera

g=(x+y+z+b+c)/5; cout<<"Promedio de las 5 mejores notas: "<<g; cout<<endl; } if(b<x && b<y && b<z && b<a && b<=c){ h=(x+y+z+a+c)/5; cout<<"Promedio de las 5 mejores notas: "<<h; cout<<endl; } if(c<x && c<y && c<x && c<a && c<b){ i=(x+y+z+a+b)/5; cout<<"Promedio de las 5 mejores notas: "<<i; cout<<endl; } system("PAUSE"); return EXIT_SUCCESS; }

20.- Calcular el pago por ciclo de un alumno de una Universidad , si se ingresan, crditos inscritos, categora, matricula (1: normal , 2; extempornea). El pago por crdito depende de la categora de acuerdo a la siguiente tabla: CATEGORA PAGO CREDITO A 125.00 B 150.00 C 180.00 Por matricula extempornea se paga un recargo de 40.00 soles. #include <cstdlib> #include <iostream> using namespace std; int main(int argc, char *argv[]) { float x,y,z,b,c,d,e,f,g; int a; cout<<"Calculando el pago por ciclo de un alumno de una universidad"<<endl<<endl; cout<<"Ingrese el numero de creditos: "; cin>>x; cout<<endl; cout<<"Ingrese el tipo de matricula: "; cin>>y; cout<<endl; cout<<"Ingrese el pago de una matricula normal: "; cin>>z; Ing Civil erick_20_05@hotmail.com. 21

Practica N 2

UNMSM

Erick Edson Pasache Lopera

cout<<endl; cout<<"1-categoria A"<<endl; cout<<"2-categoria B"<<endl; cout<<"3-matricula C"<<endl; cout<<"Ingrese el numero de opcion elegida: "; cin>>a; cout<<endl; switch(a){ case 1: if(y==1){ b=(x*125)+z; cout<<"El pago por ciclo es: "<<b; cout<<endl; } if(y==2){ c=(x*125)+z+40; cout<<"El pago por ciclo es: "<<c; cout<<endl; } break; case 2: if(y==1){ d=(x*150)+z; cout<<"El pago por ciclo es: "<<d; cout<<endl; } if(y==2){ e=(x*150)+z+40; cout<<"El pago por ciclo es: "<<e; cout<<endl; } break; case 3: if(y==1){ f=(x*180)+z; cout<<"El pago por ciclo es: "<<f; cout<<endl; } if(y==2){ g=(x*180)+z+40; cout<<"El pago por ciclo es: "<<g; cout<<endl; } break; default: cout<<"Opcion Invalida....."<<endl; } system("PAUSE"); return EXIT_SUCCESS; } Ing Civil erick_20_05@hotmail.com. 22

Practica N 2

UNMSM

Erick Edson Pasache Lopera

21.- Cree un men para determinar el rea de las siguientes figuras geomtricas: Rectngulo, triangulo, trapecio, circulo, rombo, etc. #include <cstdlib> #include <iostream> using namespace std; int main(int argc, char *argv[]) { float a,b,c,d,e,f,g,A; float pi=3.141516; int l; cout<<" Hallando las areas de los poligonos cout<<"1-rectangulo"<<endl; cout<<"2-triangulo"<<endl; cout<<"3-trapecio"<<endl; cout<<"4-circulo"<<endl; cout<<"5-rombo"<<endl; cout<<"Ingrese la opcion elegida: "; cin>>l; cout<<endl; switch(l){ case 1: cout<<"Area de un rectangulo"<<endl; cout<<"Ingrese el valor de la base mayor: "; cin>>a; cout<<"Ingrese el valor de la base menor: "; cin>>b; A=a*b; cout<<"El area del rectangulo es: "<<A; cout<<endl; break; case 2: cout<<"Area de un triangulo"<<endl; cout<<"Ingrese el valor de la base: "; cin>>c; cout<<"Ingrese el valor de la altura: "; cin>>d; A=(c*d)/2; cout<<"El area del triangulo es: "<<A; cout<<endl; break; case 3: cout<<"Area de un trapecio"<<endl; cout<<"Ingrese el valor de la base mayor: "; Ing Civil erick_20_05@hotmail.com. 23

"<<endl;

Practica N 2

UNMSM

Erick Edson Pasache Lopera

cin>>a; cout<<"Ingrese el valor de la base menor: "; cin>>b; cout<<"Ingrese el valor de la altura: "; cin>>d; A=((a+b)/2)*d; cout<<"El area del trapecio es: "<<A; cout<<endl; break; case 4: cout<<"Area de un circulo"<<endl; cout<<"Ingrese el valor del radio: "; cin>>e; A=pi*e*e; cout<<"El area del circulo es: "<<A; cout<<endl; break; case 5: cout<<"Area de un rombo"<<endl; cout<<"Ingrese el valor de la diagonal mayor: "; cin>>f; cout<<"Ingrese el valor de la diagonal menor: "; cin>>g; A=(f*g)/2; cout<<"El area del rombo es: "<<A; cout<<endl; break; default: cout<<"La opcion no existe"<<endl; } system("PAUSE"); return EXIT_SUCCESS; }

22.- Cree un men para calcular el volumen de las siguientes figuras geomtricas: Cubo, Cilindro, Esfera, Cono, ctc. #include <cstdlib> #include <iostream> #include<math.h> using namespace std; int main(int argc, char *argv[]) { float a,b,c,V; #define pi 3.1415926535 Ing Civil erick_20_05@hotmail.com. 24

Practica N 2

UNMSM

Erick Edson Pasache Lopera

int x; cout<<"Programa para calcular el volumen de figuras geometricas"<<endl; cout<<"1-cubo"<<endl; cout<<"2-cilindro"<<endl; cout<<"3-esfera"<<endl; cout<<"4-cono"<<endl; cout<<"Ingrese la opcion elegida: "; cin>>x; switch(x){ case 1: cout<<"Volumen de un cubo"<<endl; cout<<"Ingrese la arista: "; cin>>a; V=a*a*a; cout<<"El volumen del cubo es: "<<V; cout<<endl; break; case 2: cout<<"Volumen de un cilindro"<<endl; cout<<"Ingrese el radio de la base: "; cin>>b; cout<<"Ingrese la altura: "; cin>>c; V=pi*b*b*c; cout<<"El volumen del cilindro es: "<<V; cout<<endl; break; case 3: cout<<"Volumen de una esfera"<<endl; cout<<"Ingrese el radio: "; cin>>b; V=(4*pi*b*b*b)/3; cout<<"El volumen de la esfera es: "<<V; cout<<endl; break; case 4: cout<<"Volumen de un cono"<<endl; cout<<"Ingrese el radio de la base: "; cin>>b; cout<<"Ingrese la altura: "; cin>>c; V=(pi*b*b*c)/3; cout<<"El volumen del cono es: "<<V; cout<<endl; break; default: cout<<"Opcion Invalida...."<<endl; } system("PAUSE"); return EXIT_SUCCESS; } Ing Civil erick_20_05@hotmail.com. 25

Practica N 2

UNMSM

Erick Edson Pasache Lopera

23.- En un hospital se ha hecho un estudio sobre los pacientes registrados durante los ltimos 10 aos, con el objeto de hacer una aproximacin de los costos de internamiento por paciente. Se obtuvo un costo promedio diario segn el tipo de enfermedad que aqueja al paciente, adems se pudo determinar que en promedio todos los pacientes con edad entre 14 y 22 aos implican un costo adicional del 10%. La siguiente tabla expresa los costos diarios segn el tipo de enfermedad. TIPO DE ENFERMEDAD COSTO /PACIENTE 0 25 1 16 2 20 3 32 Calcular e imprimir el costo que representa un paciente #include <cstdlib> #include <iostream> using namespace std; int main(int argc, char *argv[]) { float x,a,b,c,d,e,f,g,h; int E; cout<<"Calculando el costo de internamiento por paciente en 10 aos"<<endl; cout<<"Ingrese la edad del paciente: "; cin>>x; cout<<"0-Tipo de enfermedad 0"<<endl; cout<<"1-Tipo de enfermedad 1"<<endl; cout<<"2-Tipo de enfermedad 2"<<endl; cout<<"3-Tipo de enfermedad 3"<<endl; cout<<"Ingrese la opcion elegida: "; cin>>E; switch(E){ case 0: if(x>14 && x<22){ a=((110*25)/100)*10*360; cout<<"El costo de internamiento por paciente en 10 aos es: "<<a; cout<<endl; } else{ b=25*10*360; cout<<"El costo de internamiento por paciente en 10 aos es: "<<b; cout<<endl; } break; Ing Civil erick_20_05@hotmail.com. 26

Practica N 2

UNMSM

Erick Edson Pasache Lopera

case 1: if(x>14 && x<22){ c=((110*16)/100)*10*360; cout<<"El costo de internamiento por paciente en 10 aos es: "<<c; cout<<endl; } else{ d=16*10*360; cout<<"El costo de internamiento por paciente en 10 aos es: "<<d; cout<<endl; } break; case 2: if(x>14 && x<22){ e=((110*20)/100)*10*360; cout<<"El costo de internamiento por paciente en 10 aos es: "<<e; cout<<endl; } else{ f=20*10*360; cout<<"El costo de internamiento por paciente en 10 aos"<<f; cout<<endl; } break; case 3: if(x>14 && x<22){ g=((110*32)/100)*10*360; cout<<"El costo de internamiento por paciente en 10 aos es: "<<g; cout<<endl; } else{ h=32*10*360; cout<<"El costo de internamiento por paciente en 10 aos es: "<<h; cout<<endl; } break; default: cout<<"Opcion Invalida...."<<endl; } system("PAUSE"); return EXIT_SUCCESS; } 24.- Una tienda comercial ofrece ventas al crdito financiadas en tres formas como indica a continuacin: N LETRAS TIPO FINANC. INTERES (%) CUOTA INICIAL (%) 2 1 5 60 4 2 10 50 6 3 15 35 Ing Civil erick_20_05@hotmail.com. 27

Practica N 2

UNMSM

Erick Edson Pasache Lopera

El cliente deber firmar antes de la financiacin el monto de la compra, el cual ser afecto a un 10% de impuesto, por lo que el monto de la factura es igual al monto de la compra ms el importe del impuesto. Calcular el monto de cada letra por pagar (nuevo monto de la factura menos el monto de la cuota inicial entre el nmero de letras). #include <cstdlib> #include <iostream> using namespace std; int main(int argc, char *argv[]) { float x,a,b,c; int F; cout<<"Calculando el monto de cada letra por pagar"<<endl; cout<<"Ingresar el valor de la compra: "; cin>>x; cout<<"1-tipo de financiamiento 1"<<endl; cout<<"2-tipo de financiamiento 2"<<endl; cout<<"3-tipo de financiamiento 3"<<endl; cout<<"Ingrese la opcion elegida: "; cin>>F; switch(F){ case 1: a=(((110*((105*x)/100))/100)-((60*((105*x)/100))/100))/2; cout<<"El monto de cada letra a pagar es: "<<a; cout<<endl; break; case 2: b=(((110*((110*x)/100))/100)-((50*((110*x)/100))/100))/4; cout<<"El monto de cada letra a pagar es: "<<b; cout<<endl; break; case 3: c=(((110*((115*x)/100))/100)-((35*((115*x)/100))/100))/6; cout<<"El monto de cada letra a pagar es: "<<c; cout<<endl; break; default: cout<<"La opcion no existe"<<endl; } system("PAUSE"); return EXIT_SUCCESS; } 25.-Determinar si un nmero es mltiplo de 2, de 3, de 5 o de ninguno de ellos. Considere que existen nmeros que pueden ser mltiplos de ms de un nmero. Por ejemplo: si se Ingresa 15 debe mostrarse El nmero es mltiplo de 3, El nmero es mltiplo de 5 Ing Civil erick_20_05@hotmail.com. 28

Practica N 2

UNMSM

Erick Edson Pasache Lopera

#include <cstdlib> #include <iostream> using namespace std; int main(int argc, char *argv[]) { int a; cout<<"Determinando si un nmero es mltiplo de 2, 3, 5 o de ninguno de ellos"<<endl; cout<<"Ingrese el numero: "; cin>>a; if(a%2==0 && a%3!=0 && a%5!=0){ cout<<"El numero es multiplo de 2"<<endl; } if(a%3==0 && a%2!=0 && a%5!=0){ cout<<"El numero es multiplo de 3"<<endl; } if(a%5==0 && a%2!=0 && a%3!=0){ cout<<"El numero es multiplo de 5"<<endl; } if(a%2==0 && a%3==0 && a%5!=0){ cout<<"El numero es multiplo de 2 y 3"<<endl; } if(a%2==0 && a%5==0 && a%3!=0){ cout<<"El numero es multiplo de 2 y 5"<<endl; } if(a%3==0 && a%5==0 && a%2!=0){ cout<<"El numero es multiplo de 3 y 5"<<endl; } if(a%2==0 && a%3==0 && a%5==0){ cout<<"El numero es multiplo de 2, de 3 y de 5"<<endl; } if(a%2!=0 && a%3!=0 && a%5!=0){ cout<<"El numero no es multiplo ni de 2, de 3 ni de 5"<<endl; } system("PAUSE"); return EXIT_SUCCESS; }

26.- Determinar el importe a pagar por un alumno de un instituto cuya cuota tiene un porcentaje de descuento que se establece en la siguiente tabla y esta en funcin al colegio de procedencia del alumno; asimismo los importes estn exonerados de impuestos. INSTITUTOS Ing Civil erick_20_05@hotmail.com. 29

Practica N 2 Colegio Nacional Particular

UNMSM A 50 25 B 40 29

Erick Edson Pasache Lopera C 30 15

#include <cstdlib> #include <iostream> using namespace std; int main(int argc, char *argv[]) { float x,a,b; int C,c; cout<<"Calculando el importe a pagar por un alumno de un instituto"<<endl<<endl; cout<<"Ingrese la cuota de pago: "; cin>>x; cout<<"1-colegio A"<<endl; cout<<"2-colegio B"<<endl; cout<<"3-colegio C"<<endl; cout<<"Ingrese la opcion elegida: "; cin>>C; switch(C){ case 1: cout<<"1-nacional"<<endl; cout<<"2-particular"<<endl; cout<<"Ingrese la opcion elegida: "; cin>>c; switch(c){ case 1: a=(50*x)/100; cout<<"El importe a pagar es: "<<a; cout<<endl; break; case 2: b=(75*x)/100; cout<<"El importe a pagar es: "<<b; cout<<endl; break; default: cout<<"La opcion no existe"<<endl; } break; case 2: cout<<"1-nacional"<<endl; cout<<"2-particular"<<endl; cout<<"Ingrese la opcion elegida: "; cin>>c; switch(c){ case 1: a=(60*x)/100; cout<<"El importe a pagar es: "<<a; Ing Civil erick_20_05@hotmail.com. 30

Practica N 2

UNMSM

Erick Edson Pasache Lopera

cout<<endl; break; case 2: b=(71*x)/100; cout<<"El importe a pagar es: "<<b; cout<<endl; break; default: cout<<"La opcion no existe"<<endl; } break; case 3: cout<<"1-nacional"<<endl; cout<<"2-particular"<<endl; cout<<"Ingrese la opcion elegida: "; cin>>c; switch(c){ case 1: a=(70*x)/100; cout<<"El importe a pagar es: "<<a; cout<<endl; break; case 2: b=(85*x)/100; cout<<"El importe a pagar es: "<<b; cout<<endl; break; default: cout<<"Opcion Invalida....."<<endl; } break; default: cout<<"La opcion no existe"<<endl; } system("PAUSE"); return EXIT_SUCCESS; }

27.- Una tienda distribuidora de ropa ha establecido porcentajes de descuento sobre el monto comprado de la siguiente forma: Hombres Talla Origen Nacional Importado S 10 05 M 12 07 L 15 10 S 15 07 Mujeres M 17 09 L 20 12

Determinar y mostrar para un comprador, el monto comprado, el importe del descuento y el monto a pagar. Ing Civil erick_20_05@hotmail.com. 31

Practica N 2

UNMSM

Erick Edson Pasache Lopera

#include <cstdlib> #include <iostream> using namespace std; int main(int argc, char *argv[]) { float x,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s; int S,T,N; cout<<"Hallando el importe del descuento y el monto a pagar"<<endl; cout<<"Ingrese el monto comprado: "; cin>>x; cout<<"1-hombre"<<endl; cout<<"2-mujer"<<endl; cout<<"Ingrese la opcion elegida: "; cin>>S; switch(S){ case 1: cout<<"1-talla S"<<endl; cout<<"2-talla M"<<endl; cout<<"3-talla L"<<endl; cout<<"Ingrese la opcion elegida: "; cin>>T; switch(T){ case 1: cout<<"1-nacional"<<endl; cout<<"2-importado"<<endl; cout<<"Ingrese la opcion elegida: "; cin>>N; switch(N){ case 1: b=(10*x)/100; cout<<"El descuento es: "<<b; cout<<endl; h=x-b; cout<<"El importe a pagar es: "<<h; cout<<endl; break; case 2: c=(5*x)/100; cout<<"El el descuento es: "<<c; cout<<endl; i=x-c; cout<<"El importe a pagar es: "<<i; cout<<endl; break; default: cout<<"La opcion no existe"<<endl; } break; Ing Civil erick_20_05@hotmail.com. 32

Practica N 2

UNMSM

Erick Edson Pasache Lopera

case 2: cout<<"1-nacional"<<endl; cout<<"2-importado"<<endl; cout<<"Ingrese la opcion elegida: "; cin>>N; switch(N){ case 1: d=(12*x)/100; cout<<"El descuento es: "<<d; cout<<endl; j=x-d; cout<<"El importe a pagar es: "<<j; cout<<endl; break; case 2: e=(7*x)/100; cout<<"El descuento es: "<<e; cout<<endl; k=x-e; cout<<"El importe a pagar es: "<<k; cout<<endl; break; default: cout<<"La opcion no existe"<<endl; } break; case 3: cout<<"1-nacional"<<endl; cout<<"2-importado"<<endl; cout<<"Ingrese la opcion elegida: "; cin>>N; switch(N){ case 1: f=(15*x)/100; cout<<"El descuento es: "<<f; cout<<endl; l=x-f; cout<<"El importe a pagar es: "<<l; cout<<endl; break; case 2: g=(10*x)/100; cout<<"El descuento es: "<<g; cout<<endl; m=x-g; cout<<"El importe a pagar es: "<<m; cout<<endl; break; default: cout<<"La opcion no existe"<<endl; } break; } break; case 2: cout<<"1-talla S"<<endl; Ing Civil erick_20_05@hotmail.com. 33

Practica N 2

UNMSM

Erick Edson Pasache Lopera

cout<<"2-talla M"<<endl; cout<<"3-talla L"<<endl; cout<<"Ingrese la opcion elegida: "; cin>>T; switch(T){ case 1: cout<<"1-nacional"<<endl; cout<<"2-importado"<<endl; cout<<"Ingrese la opcion elegida: "; cin>>N; switch(N){ case 1: b=(15*x)/100; cout<<"El descuento es: "<<b; cout<<endl; n=x-b; cout<<"El importe a pagar es: "<<n; cout<<endl; break; case 2: c=(7*x)/100; cout<<"El descuento es: "<<c; cout<<endl; o=x-c; cout<<"El importe a pagar es: "<<o; cout<<endl; break; default: cout<<"La opcion no existe"<<endl; } break; case 2: cout<<"1-nacional"<<endl; cout<<"2-importado"<<endl; cout<<"Ingrese la opcion elegida: "; cin>>N; switch(N){ case 1: d=(17*x)/100; cout<<"El descuento es: "<<d; cout<<endl; p=x-d; cout<<"El importe a pagar es: "<<p; cout<<endl; break; case 2: e=(9*x)/100; cout<<"El descuento es: "<<e; cout<<endl; q=x-e; cout<<"El importe a pagar es: "<<q; cout<<endl; break; default: cout<<"La opcion no existe"<<endl; Ing Civil erick_20_05@hotmail.com. 34

Practica N 2

UNMSM

Erick Edson Pasache Lopera

} break; case 3: cout<<"1-nacional"<<endl; cout<<"2-importado"<<endl; cout<<"Ingrese la opcion elegida: "; cin>>N; switch(N){ case 1: f=(20*x)/100; cout<<"El decuento es: "<<f; cout<<endl; r=x-f; cout<<"El importe a pagar es: "<<r; cout<<endl; break; case 2: g=(12*x)/100; cout<<"El descuento es: "<<g; cout<<endl; s=x-g; cout<<"El importe a pagar es: "<<s; cout<<endl; break; default: cout<<"La opcion no existe"<<endl; } break; } break; default: cout<<"Ocion Invalida....."<<endl; } system("PAUSE"); return EXIT_SUCCESS; }

28.- Escribir un programa que permita actualizar el saldo de una cuenta del cliente de un banco. Los datos de entrada son: numero de cuenta y saldo anterior. El programa adems debe ingresar el tipo de movimiento que puede ser 1 o 2. Si el tipo de movimiento es 1 representa un depsito. Si es 2 representa un retiro. En ambos casos se debe pedir el monto de la transaccin. #include <cstdlib> #include <iostream> using namespace std; int main(int argc, char *argv[]) Ing Civil erick_20_05@hotmail.com. 35

Practica N 2 {

UNMSM

Erick Edson Pasache Lopera

float y,a,b,c,d; int n,m; cout<<" Actualizando el saldo de una cuenta del cliente de un banco cout<<"1"<<endl; cout<<"2"<<endl; cout<<"3"<<endl; cout<<"4"<<endl; cout<<"5"<<endl; cout<<"Ingrese el numero de cuenta del cliente: "; cin>>n; switch(n){ case 1: cout<<"Persona 1"<<endl; break; case 2: cout<<"Persona 2"<<endl; break; case 3: cout<<"Persona 3"<<endl; break; case 4: cout<<"Persona 4"<<endl; break; case 5: cout<<"Persona 5"<<endl; break; default: cout<<"Opcion Invalida..."<<endl; } cout<<"Ingrese el saldo anterior: "; cin>>y; cout<<"1-deposito"<<endl; cout<<"2-retiro"<<endl; cout<<"Ingrese la opcion elegida: "; cin>>m; switch(m){ case 1: cout<<"Ingrese el monto a depositar: "; cin>>a; b=y+a; cout<<"El nuevo saldo de su cuenta es: "<<b; cout<<endl; break; case 2: cout<<"Ingrese el monto a retirar: "; cin>>c; d=y-c; cout<<"El nuevo saldo de su cuenta es: "<<d; cout<<endl; break; default: cout<<"Opcion Invalida..."<<endl; } system("PAUSE"); return EXIT_SUCCESS; Ing Civil erick_20_05@hotmail.com. 36

"<<endl;

Practica N 2 }

UNMSM

Erick Edson Pasache Lopera

29.- Validar El ingreso de una fecha en el formato da, mes, ao numricos determinando si es correcta o no, mostrando el mensaje correspondiente. Considerar aos bisiestos. #include <cstdlib> #include <iostream> using namespace std; int main(int argc, char *argv[]) { int d,m,a; cout<<" Validacio de fechas "<<endl; cout<<"Ingrese la fecha (dd/mm/aaaa): "; cin>>d>>m>>a; if(m<=12){ if(m==4 || m==6 || m==9 || m==11){ if(d<=30){ cout<<"La fecha es valida"<<endl; } else{ cout<<"La fecha no es valida"<<endl; } } if(m==1 || m==3 || m==5 || m==7 || m==8 || m==10 ||m==12){ if(d<=31){ cout<<"La fecha es valida"<<endl; } else{ cout<<"La fecha no es valida"<<endl; } } if(m==2){ if(a%4==0){ if(a%100==0){ if(a%400==0){ if(d=29){ cout<<"La fecha es valida"<<endl; } else{ cout<<"La fecha no es valida"<<endl; Ing Civil erick_20_05@hotmail.com. 37

Practica N 2

UNMSM } }

Erick Edson Pasache Lopera

else{ if(d<=28){ cout<<"La fecha es valida"<<endl; } else{ cout<<"La fecha no es valida"<<endl; } } } else{ if(d<=29){ cout<<"La fecha es valida"<<endl; } else{ cout<<"La fecha no es valida"<<endl; } } } else{ if(d<=28){ cout<<"La fecha es valida"<<endl; } else{ cout<<"La fecha no es valida"<<endl; } } } } else{ cout<<"La fecha no es valida"<<endl; } system("PAUSE"); return EXIT_SUCCESS; }

30.-Ingresar el da, mes y ao en el formato numrico (2-11-2001), para luego mostrarlo el formato carcter (2 de Noviembre del 2001). #include <cstdlib> #include <iostream> using namespace std; Ing Civil erick_20_05@hotmail.com. 38

Practica N 2

UNMSM

Erick Edson Pasache Lopera

int main(int argc, char *argv[]) { int d,m,a; cout<<" Cambiando el formato numerico de una fecha"<<endl; cout<<"Ingrese la fecha (dd/mm/aaaa): "; cin>>d>>m>>a; if(m<=12){ if(m==4 || m==6 || m==9 || m==11){ if(d<=30){ if(m==4){ cout<<""<<d<<" "<<"de abril del"<<" "<<a; cout<<endl; } if(m==6){ cout<<""<<d<<" "<<"de junio del"<<" "<<a; cout<<endl; } if(m==9){ cout<<""<<d<<" "<<"de setiembre del"<<" "<<a; cout<<endl; } if(m==11){ cout<<""<<d<<" "<<"de noviembre del"<<" "<<a; cout<<endl; } } else{ cout<<"La fecha no es valida"<<endl; } } if(m==1 || m==3 || m==5 || m==7 || m==8 || m==10 ||m==12){ if(d<=31){ if(m==1){ cout<<""<<d<<" "<<"de enero del"<<" "<<a; cout<<endl; } if(m==3){ cout<<""<<d<<" "<<"de marzo del"<<" "<<a; cout<<endl; } if(m==5){ cout<<""<<d<<" "<<"de mayo del"<<" "<<a; cout<<endl; Ing Civil erick_20_05@hotmail.com. 39

Practica N 2

UNMSM

Erick Edson Pasache Lopera } if(m==7){ cout<<""<<d<<" "<<"de julio

del"<<" "<<a; cout<<endl; } if(m==8){ cout<<""<<d<<" "<<"de agosto del"<<" "<<a; cout<<endl; } if(m==10){ cout<<""<<d<<" "<<"de octubre del"<<" "<<a; cout<<endl; } if(m==12){ cout<<""<<d<<" "<<"de diciembre del"<<" "<<a; cout<<endl; } } else{ cout<<"La fecha no es valida"<<endl; } } if(m==2){ if(a%4==0){ if(a%100==0){ if(a%400==0){ if(d<=29){ if(m==2){ cout<<""<<d<<" "<<"de febrero del"<<" "<<a; cout<<endl; } } else{ cout<<"La fecha no es valida"<<endl; } } else{ if(d<=28){ if(m==2){ cout<<""<<d<<" "<<"de febrero del"<<" "<<a; cout<<endl; } Ing Civil erick_20_05@hotmail.com. 40

Practica N 2

UNMSM

Erick Edson Pasache Lopera

} else{ cout<<"La fecha no es valida"<<endl; } } } else{ if(d<=29){ if(m==2){ cout<<""<<d<<" "<<"de febrero del"<<" "<<a; cout<<endl; } } else{ cout<<"La fecha no es valida"<<endl; } } } else{ if(d<=28){ if(m==2){ cout<<""<<d<<" "<<"de febrero del"<<" "<<a; cout<<endl; } } else{ cout<<"La fecha no es valida"<<endl; } } } } else{ cout<<"La fecha no es valida"<<endl; } system("PAUSE"); return EXIT_SUCCESS; }

Ing Civil erick_20_05@hotmail.com.

41

Potrebbero piacerti anche