Esta es la entrega que ofrece una amplia enseñanza
acerca de la resolución de problemas computacionales
en lenguaje C++.Net.
Este libro muestra ejercicios diseñados didácticamente
para la fácil asimilación del estudiante.
Además se incluye ejercicios de maratón, exámenes y
ejercicios para aplicaciones actuales.
Con este libro Usted podrá culminar su carrera
de ciencias informáticas sin morir en el intento.
1. Capítulo 5
EJERCICIOS DE
AUTOEVALUACION
5.1 Estructuras Simples
5.2 Estructura condicional < if - else >
5.3 Estructura de selectiva múltiple < switch >
5.4 Estructura repetitiva < for >
5.5 Estructura repetitiva < while > y < do - while >
5.6 Anidamiento de bucles
2. 5.1 Estructuras Simples
/**********************Inicio del Programa***************************
Ejercicio 01: Ingrese por teclado un número, calcular y mostrar:
-El doble del número ingresado
-La 3ra. parte del número ingresado.
-El cubo del número ingresado.
*********************************************************************/
#include <iostream>
using namespace std;
void main(){
int nro, doble, cubo;
double tercera_parte;
printf("nIngrese un numero: ");
scanf("%d", &nro); fflush(stdin);
doble = nro * 2;
cubo = nro * nro * nro;
tercera_parte = nro / 3.0;
printf("nDoble: %d", doble);
printf("nCubo: %d", cubo);
printf("nTercera Parte: %8.3lf", tercera_parte);
printf("nn");
system("PAUSE");
}
/***************************Fin del Programa****************************/
/**********************Inicio del Programa***************************
Ejercicio 02: Ingrese por teclado el nombre y 3 notas de un alumno,
calcular y mostrar el promedio del alumno
*********************************************************************/
#include <iostream>
using namespace std;
void main(){
char nombre[30];
int n1, n2, n3;
double prom;
printf("nIngrese nombre: "); gets(nombre); fflush(stdin);
printf("nIngrese nota 1: "); scanf("%d", &n1); fflush(stdin);
printf("nIngrese nota 2: "); scanf("%d", &n2); fflush(stdin);
3. printf("nIngrese nota 3: "); scanf("%d", &n3); fflush(stdin);
prom = ( n1 + n2 + n3 ) / 3.0;
printf("nn%s tiene promedio: %8.0lf", nombre, prom);
printf("nn");
system("PAUSE");
}
/***************************Fin del Programa****************************/
/**********************Inicio del Programa***************************
Ejercicio 03: Ingrese por teclado una cantidad en metros,
transformar los metros a centímetros, pulgadas (2.54 cm) y a pies (12 pulgadas)
*********************************************************************/
#include <iostream>
using namespace std;
void main(){
double centimetro=100, pulgada=2.54, pie=12 ;
double metros, centimetros, pulgadas, pies;
printf("nIngrese cantidad en metros: "); scanf("%lf", &metros); fflush(stdin);
centimetros = metros * centimetro;
pulgadas = centimetros / pulgada;
pies = pulgadas / pie;
printf("nn Centimetros: %8.3lf", centimetros);
printf("n Pulgadas: %8.3lf", pulgadas);
printf("n Pies: %8.3lf", pies);
printf("nn");
system("PAUSE");
}
/***************************Fin del Programa****************************/
/**********************Inicio del Programa***************************
Ejercicio 04: Ingrese por teclado la descripción, precio y
cantidad vendida de un producto, calcular y mostrar:
-Importe de la compra
-Impuesto general a las ventas (18%)
-Importe Final
4. *********************************************************************/
#include <iostream>
using namespace std;
void main(){
char descripcion[50];
double precio, importe_compra, igv=0.18, impuestos, importe_final;
int cantidad;
printf("nIngrese descripcion producto: "); gets(descripcion); fflush(stdin);
printf("nIngrese precio: "); scanf("%lf", &precio); fflush(stdin);
printf("nIngrese cantidad vendida: "); scanf("%d", &cantidad); fflush(stdin);
importe_compra = precio * cantidad;
impuestos = importe_compra * igv;
importe_final = importe_compra + impuestos;
printf("nn Importe Compra: %8.2lf", importe_compra);
printf("n Impuesto General a las Ventas: %8.2lf", impuestos);
printf("n Importe Final: %8.2lf", importe_final);
printf("nn");
system("PAUSE");
}
/***************************Fin del Programa****************************/
/**********************Inicio del Programa***************************
Ejercicio 05: Ingrese por teclado un número de 3 cifras, calcular y mostrar:
- Suma de las cifras
- EL número ingresado en sentido inverso
*********************************************************************/
#include <iostream>
using namespace std;
void main(){
int nro, U, D, C, nroinv;
printf("nIngrese un numero de tres cifras: "); scanf("%d", &nro); fflush(stdin);
C = nro / 100;
D = (nro % 100) / 10;
U = nro % 10;
nroinv = U*100 + D*10 + C;
printf("nn Suma de cifras: %d", U + D + C);
printf("nn Nro ingresado invertido: %d", nroinv);
printf("nn");
5. system("PAUSE");
}
/***************************Fin del Programa****************************/
/**********************Inicio del Programa***************************
Ejercicio 06: Ingrese por teclado el número de alumnos matriculados en un colegio,
calcular y mostrar:
- Cantidad de aulas completas
- Cantidad de alumnos que faltan para completar la última aula.
Nota: Un aula completa es de 40 alumnos.
*********************************************************************/
#include <iostream>
using namespace std;
void main(){
int nro_alu, aulac, alufal, aula=40;
printf("nIngrese un numero de alumnos matriculados: "); scanf("%d", &nro_alu);
fflush(stdin);
aulac = nro_alu / aula;
alufal = aula - (nro_alu % aula);
printf("nn Aulas completas: %d", aulac);
printf("nn Alumnos que faltan para completar la ultima aula: %d", alufal);
printf("nn");
system("PAUSE");
}
/***************************Fin del Programa****************************/
/**********************Inicio del Programa***************************
Ejercicio 07: Se tiene n segundos, calcular y mostrar:
- Cantidad de horas
- Cantidad de minutos
- Cantidad de segundos restantes
*********************************************************************/
#include <iostream>
using namespace std;
void main(){
7. M01 = (centavos % 5) % 2;
printf("nn Numero Billetes de 100: %d", B100);
printf("nn Numero Billetes de 50: %d", B50);
printf("nn Numero Billetes de 20: %d", B20);
printf("nn Numero Billetes de 10: %d", B10);
printf("nn Numero Monedas de 5: %d", M5);
printf("nn Numero Monedas de 2: %d", M2);
printf("nn Numero Monedas de 1: %d", M1);
printf("nn Numero Monedas de 0.50: %d", M05);
printf("nn Numero Monedas de 0.20: %d", M02);
printf("nn Numero Monedas de 0.10: %d", M01);
printf("nn");
system("PAUSE");
}
/***************************Fin del Programa****************************/
/**********************Inicio del Programa***************************
Ejercicio 09: Ingrese por teclado el nombre y 2 fechas (día, mes año)
una la fecha actual y otra la fecha de nacimiento de la persona,
calcule y muestre la edad exacta de dicha persona.
*********************************************************************/
#include <iostream>
using namespace std;
void main(){
int anio=360, mes=30;
char nombre[50];
int an, mn, dn;//fecha nacimiento
int aa, ma, da;//fecha actual
int av, mv, dv;// tiempo vivido
int tdfn, tdfa, tdv;
printf("nIngrese nombre: "); gets(nombre); fflush(stdin);
printf("nnFecha Actual ");
printf("ndia: "); scanf("%d", &da); fflush(stdin);
printf("mes: "); scanf("%d", &ma); fflush(stdin);
printf("anio: "); scanf("%d", &aa); fflush(stdin);
printf("nnFecha de Nacimiento ");
printf("ndia: "); scanf("%d", &dn); fflush(stdin);
printf("mes: "); scanf("%d", &mn); fflush(stdin);
printf("anio: "); scanf("%d", &an); fflush(stdin);
8. //Pasamos los datos a días
tdfa=(aa*anio)+(ma*mes)+da;
tdfn=(an*anio)+(mn*mes)+dn;
//Restamos los días
tdv=tdfa-tdfn;
//Pasamos a formato año, mes y día
av=tdv/anio;
mv=(tdv%anio)/mes;
dv=(tdv%anio)%mes;
printf("nn%s tienes %d Ano(s) con %d Mes(es) y %d Dia(s) ", nombre, av, mv, dv );
printf("nn");
system("PAUSE");
}
/***************************Fin del Programa****************************/
/**********************Inicio del Programa***************************
Ejercicio 10: Ingrese por teclado dos números, realice un
intercambio interno de valores entre variables.
*********************************************************************/
#include <iostream>
using namespace std;
void main(){
int A, B, aux;
printf("nIngrese numero 1: "); scanf("%d", &A); fflush(stdin);
printf("nIngrese numero 2: "); scanf("%d", &B); fflush(stdin);
aux=A;
A=B;
B=aux;
printf("nn Numeros intercambiados");
printf("nnNumero 1: %d ", A);
printf("nnNumero 2: %d ", B);
printf("nn");
system("PAUSE");
}
/***************************Fin del Programa****************************/
9. 5.2 Estructura condicional < if - else >
/**********************Inicio del Programa***************************
Ejercicio 01: Ingrese por teclado un número y muestre un mensaje "es cero",
solo cuando esto ocurra.
*********************************************************************/
#include <iostream>
using namespace std;
void main(){
int nro;
printf("nIngrese numero : "); scanf("%d", &nro); fflush(stdin);
if(nro==0)
printf("nn Es cero");
printf("nn");
system("PAUSE");
}
/***************************Fin del Programa****************************/
/**********************Inicio del Programa***************************
Ejercicio 02: Ingrese por teclado las tallas de dos personas,
solo si la segunda talla es mayor a la primera se visualizara la mayor talla.
*********************************************************************/
#include <iostream>
using namespace std;
void main(){
double talla1, talla2;
printf("nIngrese talla 1 : "); scanf("%lf", &talla1); fflush(stdin);
printf("nIngrese talla 2 : "); scanf("%lf", &talla2); fflush(stdin);
if(talla2 > talla1)
printf("nn La mayor talla es : %8.2lf", talla2);
printf("nn");
system("PAUSE");
}
/***************************Fin del Programa****************************/
10. /**********************Inicio del Programa******************************
Ejercicio 03: Ingrese por teclado el nombre, cantidad de hijos y sueldo basico
de un trabajador, Solo si el trabajador tiene hijos tendra una bonificación
de 4% del sueldo basico, mostrar la bonificacion y el sueldo final.
*********************************************************************/
#include <iostream>
using namespace std;
void main(){
char nombre[50];
int cant_hijos;
double sueldo, bonificacion, porc=0.04, sueldoFinal;
printf("nIngrese nombre de trabajador : "); gets(nombre); fflush(stdin);
printf("nIngrese cantidad de hijos : "); scanf("%d", &cant_hijos); fflush(stdin);
printf("nIngrese sueldo basico : "); scanf("%lf", &sueldo); fflush(stdin);
//Inicializacion
bonificacion = 0;
sueldoFinal = sueldo;
//Evaluacion
if(cant_hijos > 0){
bonificacion = sueldo * porc;
sueldoFinal = sueldo + bonificacion;
}
//Impresion de informacion
printf("nn Trabajador %s tiene ", nombre);
printf("nn Bonificacion es : %8.2lf", bonificacion);
printf("nn Sueldo Final es : %8.2lf", sueldoFinal);
printf("nn");
system("PAUSE");
}
/***************************Fin del Programa****************************/
/*********************************************************************
Ejercicio 04: Ingrese un caracter por teclado y visualice el mensaje
"es letra del alfabeto mayuscula" solo cuando esto ocurra.
*********************************************************************/
#include <iostream>
using namespace std;
void main(){
char caracter;
printf("nIngrese caracter : "); caracter=getchar(); fflush(stdin);
11. if(caracter >= 'A' && caracter <= 'Z')
printf("nn Es letra del alfabeto mayuscula ");
printf("nn");
system("PAUSE");
}
/***************************Fin del Programa****************************/
/*********************************************************************
Ejercicio 05: Ingrese un caracter por teclado y visualice el mensaje
"es vocal mayuscula o minuscula" solo cuando esto ocurra.
*********************************************************************/
#include <iostream>
using namespace std;
void main(){
char caracter;
printf("nIngrese caracter : "); caracter=getchar(); fflush(stdin);
if(caracter == 'A' || caracter == 'E' || caracter == 'I' || caracter == 'O' || caracter == 'U')
printf("nn Es vocal mayuscula ");
if(caracter == 'a' || caracter == 'e' || caracter == 'i' || caracter == 'o' || caracter == 'u')
printf("nn Es vocal minuscula ");
printf("nn");
system("PAUSE");
}
/***************************Fin del Programa****************************/
/*********************************************************************
Ejercicio 06: Una empresa de transporte terrestre vendio una determinada
cantidad de boletos vendidos, ingrese por teclado el numero de correlativo
del primer y ultimo boleto vendido asi como el precio por boleto.
Si es que la cantidad de boletos vendidos es mayor 1000, calcular y mostrar:
-Importe de boletos vendidos
-Incentivo que sera el 20% del importe de boletos vendidos
*********************************************************************/
#include <iostream>
using namespace std;
12. void main(){
int bol_inicial, bol_final, cantidad, limite = 1000;
double precio, importe, incentivo, porc = 0.25 ;
printf("nIngrese Numero del primer boleto : "); scanf("%d", &bol_inicial); fflush(stdin);
printf("nIngrese Numero del ultimo boleto : "); scanf("%d", &bol_final); fflush(stdin);
printf("nIngrese precio unitario de boleto : "); scanf("%lf", &precio); fflush(stdin);
cantidad = (bol_final - bol_inicial) + 1 ;
if(cantidad > limite){
importe = precio * cantidad;
incentivo = importe * porc;
printf("nn Importe: %8.2lf", importe);
printf("nn Incentivo: %8.2lf", incentivo);
}
printf("nn");
system("PAUSE");
}
/***************************Fin del Programa****************************/
/*********************************************************************
Ejercicio 07: Ingrese 3 numeros enteros, muestre el mayor, menor y el
que se encuentra en el medio.
*********************************************************************/
#include <iostream>
using namespace std;
void main(){
int a, b, c, mayor, menor, medio;
printf("nrIngrese 1er #: ");scanf("%d",&a); fflush(stdin);
printf("nrIngrese 2do #: ");scanf("%d",&b); fflush(stdin);
printf("nrIngrese 3er #: ");scanf("%d",&c); fflush(stdin);
mayor = a;
if(b > mayor)mayor = b;
if(c > mayor)mayor = c;
menor = a;
if(b < menor)menor = b;
if(c < menor)menor = c;
medio = ( a + b + c ) - ( mayor + menor );
printf("nnrEl mayor es: %d", mayor);
printf("nrEl que se situa en el medio es: %d", medio);
13. printf("nrEl menor es: %d", menor);
printf("nn");
system("PAUSE");
}
/***************************Fin del Programa****************************/
/*********************************************************************
Ejercicio 08: Realizar la siguiente funcion:
|X , 1<=X<=5
|X + 5, 5< X <=25
Z => |1 / X, 25< X <=50
|5X -4, 50< X <=90
|X3 , X >90
*********************************************************************/
#include <iostream>
using namespace std;
void main(){
double X;
printf("nrIngrese valor de X: "); scanf("%lf",&X); fflush(stdin);
//No anidamos porque segun la funcion, X solo puede entrar a una condicion.
if( 1 <= X && X <= 5){
printf("nnrZ: %8.2lf nn", X );
system("PAUSE");
exit(0);
}
if( 5 < X && X <= 25){
printf("nnrZ: %8.2lf nn", X + 5 );
system("PAUSE");
exit(0);
}
if( 25 < X && X <= 50){
printf("nnrZ: %8.2lf nn", 1 / X );
system("PAUSE");
exit(0);
}
if( 50 < X && X <= 90){
printf("nnrZ: %8.2lf nn", 5*X -4 );
system("PAUSE");
exit(0);
}
if( X > 90){
14. printf("nnrZ: %8.2lf nn", X*X*X );
system("PAUSE");
exit(0);
}
}
/***************************Fin del Programa****************************/
/*********************************************************************
Ejercicio 09: Ingrese por teclado un numero entero, evalue si cumple:
- Que sea positivo
- Que sea de dos ó 4 cifras
- Si es de dos cifras que la primera sea sea mayor a la segunda
- Si es de cuatro cifras que la suma de las cifras sea mayor a la primera
y a la segunda.
*********************************************************************/
#include <iostream>
using namespace std;
void main(){
int nro, U, D, C, M;
bool bandera=false;
printf("nrIngrese numero a evaluar: "); scanf("%d",&nro); fflush(stdin);
//No es necesario validar que sea positivo,
//puesto que esta implicito en las evaluaciones
if( nro>=10 && nro <=99 ) {
D = nro / 10;
U = nro % 10;
bandera = D > U;
}
if( nro>=1000 && nro <=9999 ){
M = nro / 1000;
C = (nro % 1000) / 100;
D = ((nro % 1000) % 100) / 10;
U = nro % 10;
bandera = (M + C + D + U) > M && (M + C + D + U) > U;
}
if(bandera)
printf("nnSi cumple las condicionesnn");
else
printf("nnNo cumple las condicionesnn");
system("PAUSE");
}
/***************************Fin del Programa****************************/
15. /*********************************************************************
Ejercicio 10: Ingrese un numero por teclado, diga si es par o impar
*********************************************************************/
#include <iostream>
using namespace std;
void main(){
int nro;
printf("nrIngrese numero a evaluar: "); scanf("%d",&nro); fflush(stdin);
if( nro % 2 == 0 )
printf("nnNumero es Parnn");
else
printf("nnNumero es Imparnn");
system("PAUSE");
}
/***************************Fin del Programa****************************/
/*********************************************************************
Ejercicio 11: Ingrese por teclado el nombre, edad y sexo (M, F), muestre uno
de acuerdo a los datos ingresados los siguientes mensajes:
-Masculino mayor de edad
-Masculino menor de edad
-Femenino mayor de edad
-Femenino menor de edad
*********************************************************************/
#include <iostream>
using namespace std;
void main(){
char nombre[50], sexo;
int edad;
printf("nrIngrese nombre : "); gets(nombre); fflush(stdin);
printf("nrIngrese sexo (M, F): "); sexo=getchar(); fflush(stdin);
printf("nrIngrese edad: "); scanf("%d",&edad); fflush(stdin);
if( sexo=='M' )
if(edad>=18)
printf("nnMasculino mayor de edadnn");
else
16. printf("nnMasculino menor de edadnn");
else if( sexo=='F' )
if(edad>=18)
printf("nnFemenino mayor de edadnn");
else
printf("nnFemenino menor de edadnn");
else
printf("nnError en ingreso de sexonn");
system("PAUSE");
}
/***************************Fin del Programa****************************/
/*********************************************************************
Ejercicio 12: Ingrese por teclado, el nombre e importe de compra de
un cliente, calcular y mostrar:
- Impuesto general a la venta (18%), solo si el importe de compra
es mayor a 5.00 soles, caso contrario sera cero.
-Subtotal
-Descuento del subtotal, Si el subtotal es mayor a 500.00 sera
el 9% de no ser asi sera 2%.
-Importe Final
*********************************************************************/
#include <iostream>
using namespace std;
void main(){
char nombre[50];
double importe, lim_impcomp = 5,
IGV = 0.18, impuestos,
dscto, descuentos,
subtotal, lim_subtotal = 500, importeFinal;
printf("nrIngrese nombre : "); gets(nombre); fflush(stdin);
printf("nrIngrese importe de la compra: "); scanf("%lf",&importe); fflush(stdin);
if(importe > lim_impcomp)
impuestos = importe * IGV;
else
impuestos = 0;
subtotal = importe + impuestos;
if(subtotal > lim_subtotal){
dscto = 0.09;
descuentos = subtotal * dscto;
}else{
dscto = 0.02;
descuentos = subtotal * dscto;
}
17. importeFinal = subtotal - descuentos;
printf("nnImpuesto general a la venta : %lf", impuestos);
printf("nnSubtotal : %lf", subtotal);
printf("nnDescuentos : %lf", descuentos);
printf("nnImporte Final : %lfnn", importeFinal);
system("PAUSE");
}
/***************************Fin del Programa****************************/
/*********************************************************************
Ejercicio 13: Se desea saber cual es la mejor compra entre dos tipos
de pizza rectangular y circular. Para eso se ingresan las dimensiones
largo, ancho y diametro respectivamente, ademas del precio de la pizza.
*********************************************************************/
#include <iostream>
using namespace std;
void main(){
double PI=3.14159, radio, area;
double diametro,largo,ancho;
double precio_redonda, preciounit_redonda;
double precio_rectangular, preciounit_rectangular;
printf("nnPizza redondann");
printf("Ingrese diametro(en pulgadas) de una pizza redonda:"); scanf("%lf", &diametro);
fflush(stdin);
printf("Ingrese precio de una pizza redonda $/ :"); scanf("%lf", &precio_redonda);
fflush(stdin);
printf("nnPizza rectangularnn");
printf("Ingrese largo(en pulgadas) de una pizza rectangular :"); scanf("%lf", &largo);
fflush(stdin);
printf("Ingrese ancho(en pulgadas) de una pizza rectangular :"); scanf("%lf", &ancho);
fflush(stdin);
printf("Ingrese precio de pizza rectangular $/ :"); scanf("%lf", &precio_rectangular);
fflush(stdin);
area = largo * ancho;
preciounit_rectangular = precio_rectangular / area;
radio = diametro / 2.0;
area=PI*radio*radio;
preciounit_redonda=precio_redonda / area;
printf("nnPrecio pizza rendonda: $ %8.2lf", precio_redonda);
printf("nrPrecio pizza por pulgada cuadrada: $ %8.2lf", preciounit_redonda);
printf("nnPrecio pizza rectangular: $ %8.2lf", precio_rectangular);
printf("nrPrecio pizza por pulgada cuadrada: $ %8.2lf", preciounit_rectangular);
18. if(preciounit_redonda<preciounit_rectangular)
printf("nnLa pizza redonda es la mejor compra.");
else
printf("nnLa pizza rectangular es la mejor compra.");
printf("nn");
system("PAUSE");
}
/***************************Fin del Programa****************************/
19. 5.3 Estructura de selectiva múltiple < switch >
/*********************************************************************
Ejercicio 01: Se pide ingresar un número del uno al veinte,
imprima dicho número en letras.
*********************************************************************/
#include <iostream>
using namespace std;
void main(){
int n;
printf("nrIngrese #(1-20) : "); scanf("%d",&n);
printf("nnr");
switch(n){
case 1: printf("Uno");break;
case 2: printf("Dos");break;
case 3: printf("Tres");break;
case 4: printf("Cuatro");break;
case 5: printf("Cinco");break;
case 6: printf("Seis");break;
case 7: printf("Siete");break;
case 8: printf("Ocho");break;
case 9: printf("Nueve");break;
case 10:printf("Diez");break;
case 11:printf("Once");break;
case 12:printf("Doce");break;
case 13:printf("Trece");break;
case 14:printf("Catorce");break;
case 15:printf("Quince");break;
case 16:printf("Diez y Seis");break;
case 17:printf("Diez y siete");break;
case 18:printf("Diez y ocho");break;
case 19:printf("Diez y nueve");break;
case 20:printf("Veinte");break;
}
printf("nn");
system("PAUSE");
}
/***************************Fin del Programa****************************/
/*********************************************************************
Ejercicio 02: Realizar un algoritmo que lea un numero que represente
el día de semana. Muestre el numero en dias:
(Lunes=1, Martes=2, …, Domingo=7).
20. *********************************************************************/
#include <iostream>
using namespace std;
void main(){
int n;
printf("nrIngrese numero de dia de semana #(1-7) : "); scanf("%d",&n);
printf("nnr");
switch(n){
case 1: printf("Lunes");break;
case 2: printf("Martes");break;
case 3: printf("Miercoles");break;
case 4: printf("Jueves");break;
case 5: printf("Viernes");break;
case 6: printf("Sabado");break;
case 7: printf("Domingo");break;
default: printf("Numero de dia No reconodido");break;
}
printf("nn");
system("PAUSE");
}
/***************************Fin del Programa****************************/
/*********************************************************************
Ejercicio 03: Escribir un algoritmo que solicite el ingreso de dos
números y a continuación un operador aritmético (+, -, *, /).
El algoritmo debe calcular el resultado de la operación seleccionada.
*********************************************************************/
#include <iostream>
using namespace std;
void main(){
char ope;
double n1, n2;
printf("nrIngrese numero 1 : "); scanf("%lf",&n1); fflush(stdin);
printf("nrIngrese numero 2 : "); scanf("%lf",&n2); fflush(stdin);
printf("nrIngrese Operacion (+,-,*,/) : "); ope=getchar(); fflush(stdin);
printf("nnrResultado:");
switch(ope){
case '+': printf("%8.2lf", n1 + n2);break;
case '-': printf("%8.2lf", n1 - n2);break;
case '*': printf("%8.2lf", n1 * n2);break;
case '/': printf("%8.2lf", n1 / n2);break;
21. default: printf("Operacion ingresada No reconodido");break;
}
printf("nn");
system("PAUSE");
}
/***************************Fin del Programa****************************/
/*********************************************************************
Ejercicio 04: Escribir un algoritmo que solicite el ingreso de dos
números y a continuación un operador aritmético (+, -, *, /).
El algoritmo debe calcular el resultado de la operación seleccionada.
*********************************************************************/
#include <iostream>
using namespace std;
void main(){
char ope;
double n1, n2;
printf("nrIngrese numero 1 : "); scanf("%lf",&n1); fflush(stdin);
printf("nrIngrese numero 2 : "); scanf("%lf",&n2); fflush(stdin);
printf("nrIngrese Operacion (+,-,*,/) : "); ope=getchar(); fflush(stdin);
printf("nnrResultado:");
switch(ope && ope){
case '+': printf("%8.2lf", n1 + n2);break;
case '-': printf("%8.2lf", n1 - n2);break;
case '*': printf("%8.2lf", n1 * n2);break;
case '/': printf("%8.2lf", n1 / n2);break;
default: printf("Operacion ingresada No reconodido");break;
}
printf("nn");
system("PAUSE");
}
/***************************Fin del Programa****************************/
22. 5.4 Estructura repetitiva < for >
/*********************************************************************
Ejercicio 01: Mostrar el doble, triple y el cuadrado de todos
los numeros que se encuentran entre el 10 y 30.
*********************************************************************/
#include <iostream>
using namespace std;
void main(){
int ini = 10, fin = 30, i;
for(i=ini;i<=fin;i++)
printf("nrNumero %d, doble %d, triple %d y su cuadrado %d.",
i,
i * 2,
i * 3,
i * i);
printf("nn");
system("PAUSE");
}
/***************************Fin del Programa****************************/
/*********************************************************************
Ejercicio 02: Visualice la palabra "ALGORITMO" 200 veces.
*********************************************************************/
#include <iostream>
using namespace std;
void main(){
int ini = 1, fin = 200, i;
for(i=ini;i<=fin;i++)
printf("nrALGORITMO");
printf("nn");
system("PAUSE");
}
/***************************Fin del Programa****************************/
/*********************************************************************
23. Ejercicio 03: Digite un numero positivo y entero, visualice la
palabra "SENTENCIA" 5 veces el numero ingresado. Ademas enumere
cada visualizacion.
*********************************************************************/
#include <iostream>
using namespace std;
void main(){
int ini = 1, fin , i, n;
printf("nrIngrese numero : "); scanf("%d",&n);
fin = n * 5;
for(i=ini;i<=fin;i++)
printf("nr %d ALGORITMO", i);
printf("nn");
system("PAUSE");
}
/***************************Fin del Programa****************************/
/*********************************************************************
Ejercicio 04: Digite un numero entero, visualice
los 50 numeros superiores e inferiores consecutivos a este.
*********************************************************************/
#include <iostream>
using namespace std;
void main(){
int cantidad = 50, i, n, ini, fin;
printf("nrIngrese numero : "); scanf("%d",&n);
printf("nnNumeros Superiores consecutivosnn");
ini = n + 1;
fin = n + cantidad ;
for(i = ini;i<=fin;i++)
printf("nr %d", i);
printf("nnNumeros Inferiores consecutivosnn");
ini = n - 1;
fin = n - cantidad ;
for(i = ini;i>=fin;i--)
printf("nr %d", i);
printf("nn");
system("PAUSE");
24. }
/***************************Fin del Programa****************************/
/*********************************************************************
Ejercicio 05: Ingrese por teclado dos numeros (asuma enteros y positivos)
visualice todos los enteros consecutivos que estan comprendidos
en estos. Ademas mostrar la suma al finalizar.
*********************************************************************/
#include <iostream>
using namespace std;
void main(){
int S, i, n1, n2, ini, fin;
printf("nrIngrese numero 1: "); scanf("%d",&n1);
printf("nrIngrese numero 2: "); scanf("%d",&n2);
if(n1>n2){
ini = n2;
fin = n1;
}else{
ini = n1;
fin = n2;
}
S=0;
for( i = ini + 1 ; i < fin ; i++ ){
S+=i;
printf("nr %d", i);
}
printf("nn La Suma es %dnn", S);
system("PAUSE");
}
/***************************Fin del Programa****************************/
/*********************************************************************
Ejercicio 06: Ingrese por teclado dos notas y el nombre de
N alumnos, mostrar el promedio, condicion (Aprobado, Desaprobado)
y promedio global.
*********************************************************************/
#include <iostream>
using namespace std;
void main(){
25. char nombre[50];
int i, N, n1, n2;
double promA, promG, SG;
printf("nrIngrese numero de alumnos: "); scanf("%d",&N);fflush(stdin);
SG=0;
for(i=1;i<=N;i++){
printf("nrIngrese nombre alumno %d: ", i); gets(nombre); fflush(stdin);
printf("nrIngrese nota 1: "); scanf("%d",&n1); fflush(stdin);
printf("nrIngrese nota 2: "); scanf("%d",&n2); fflush(stdin);
promA = (n1 + n2) / 2.0;
if(promA >= 10.5)
printf("nAprobado con %8.2lf", promA);
else
printf("nDesaprobado con %8.2lf", promA);
SG+= promA;
}
printf("nnn El promedio global es %8.2lf", SG / N);
printf("nn");
system("PAUSE");
}
/***************************Fin del Programa****************************/
/*********************************************************************
Ejercicio 07: Genere:
-Los 70 primeros impares positivos
-Los 50 primeros numeros multiplos de 3
-Los multiplos de 2 y 3 a la vez comprendidos en (20-100), al final
mostrar cuantos numeros se generaron.
*********************************************************************/
#include <iostream>
using namespace std;
void main(){
int i, ini, fin, cantidad;
printf("nn70 primeros impares positivos nn");
ini = 1;
fin = 70 * 2;
for(i=ini ; i<=fin ; i+=2)
printf("%dt", i);
printf("nn50 primeros numeros multiplos de 3 nn");
ini = 3;
fin = 50 * ini;
26. for(i=ini ; i<=fin ; i+=3)
printf("%dt", i);
printf("nnMultiplos de 2 y 3 a la vez comprendidos en (20-100) nn");
ini = 20;
fin = 100;
cantidad=0;
for(i=ini ; i<=fin ; i++)
if(i%2==0 && i%3==0){
printf("%dt", i);
cantidad++;
}
printf("nnNumeros generados %dnn", cantidad);
system("PAUSE");
}
/***************************Fin del Programa****************************/
/*********************************************************************
Ejercicio 08: Ingrese un numero, muestre el mensaje "Es primo o No"
segun sea el caso.
Numero primo es que solo es divisible por la unidad y el mismo numero
Ejm:7(1, 7), 13(1,13)
*********************************************************************/
#include <iostream>
using namespace std;
void main(){
int i, N, divisores;
printf("nrIngrese numero : "); scanf("%d",&N); fflush(stdin);
divisores=0;
for(i=1;i<=N;i++)
if(N%i==0)divisores++;
if(N==1 || divisores==2)
printf("nrEs primo ");
else
printf("nrNo es primo");
printf("nn");
system("PAUSE");
}
/***************************Fin del Programa****************************/
/*********************************************************************
27. Ejercicio 09: Ingrese un numero entero de n cifras,
muestre y sume sus cifras.
*********************************************************************/
#include <iostream>
using namespace std;
void main(){
int i, N, nro, digito, S;
printf("nrIngrese numero : "); scanf("%d",&N); fflush(stdin);
S=0;
for(nro=N ; nro > 0 ; nro/= 10){
digito = nro % 10;
S+=digito;
}
printf("nnSuma digitos: %dnn", S);
system("PAUSE");
}
/***************************Fin del Programa****************************/
/*********************************************************************
Ejercicio 10: Ingrese por teclados los N terminos. Sume y
genére las siguientes secuencias:
a) -2 -4 -6 -8 -10...N
b) 3.3 4.4 5.5 6.6 7.7 8.8...N
c) 1 4 9 16 25 36...N
d) -1 +2 -3 +4 -5 +6 -7...N
e) -1 3 15 35 63 99...N
f) 1 2 4 7 11 16...N
*********************************************************************/
#include <iostream>
using namespace std;
void main(){
int i, N, S, termino, parte_entera, incremento, A, B, C;
double parte_real, termino_real, S_real;
printf("nrIngrese numero de terminos : "); scanf("%d",&N); fflush(stdin);
printf("nn a) -2 -4 -6 -8 -10...N nn");
S=0;
for(i=1 ; i<=N ; i++){
termino = i*-2;
printf("%dt", termino);
S+=termino;
}
printf("nnSuma de secuencia: %dnn", S);
29. printf("nn f) 1 2 4 7 11 16...N nn");
// i-> 1 2 3 4 5
S=0; A=1;
for(i=1; i<=N ; i++){
printf("%dt", A);
S+=A;
A+=i;
}
printf("nnSuma de secuencia: %dnn", S);
system("PAUSE");
}
/***************************Fin del Programa****************************/
/*********************************************************************
Ejercicio 11: Ingrese 2 numeros que representen una base y un
exponente. Muestre el resultado de la operacion.
*********************************************************************/
#include <iostream>
using namespace std;
void main(){
int x,y,i; long r;
printf("Ingrese nro...");scanf("%d",&x);
printf("Ingrese exponente...");scanf("%d",&y);
r=1;
for(i=1;i<=y;i++)
r*=x;
printf("Resultado...%ldnn",r);
system("PAUSE");
}
/***************************Fin del Programa****************************/
30. 5.5 Estructura repetitiva < while > y < do - while >
/*********************************************************************
Ejercicio 01: Contruya un proceso repetitivo que permita el ingreso
por teclado de varias letras, el programa terminara cuando se
ingrese la letra 'K'
*********************************************************************/
#include <iostream>
using namespace std;
void main(){
char car;
do{
printf("nIngrese caracter: "); car=getchar(); fflush(stdin);
}while(car!='K');
printf("nn");
system("PAUSE");
}
/***************************Fin del Programa****************************/
/*********************************************************************
Ejercicio 02: Contruya un proceso repetitivo que permita el ingreso
por teclado de varias numeros, el programa terminara cuando se
ingrese el numero cero.
*********************************************************************/
#include <iostream>
using namespace std;
void main(){
int N;
do{
printf("nrIngrese numero : "); scanf("%d",&N);
}while(N!=0);
printf("nn");
system("PAUSE");
}
/***************************Fin del Programa****************************/
/*********************************************************************
Ejercicio 03: Contruya un proceso repetitivo que permita el ingreso
por teclado de numeros de una cifra positivos, el programa terminara cuando se
31. ingrese un numero de mas de una cifra.
*********************************************************************/
#include <iostream>
using namespace std;
void main(){
int N;
do{
printf("nrIngrese numero : "); scanf("%d",&N);
}while(N>=10);
printf("nn");
system("PAUSE");
}
/***************************Fin del Programa****************************/
/*********************************************************************
Ejercicio 04: Contruya un proceso repetitivo que permita el ingreso
por teclado de numeros de dos cifras positivos, el programa terminara
cuando la suma de las cifras sea 12.
*********************************************************************/
#include <iostream>
using namespace std;
void main(){
int N, U, D;
do{
printf("nrIngrese numero de dos cifras: "); scanf("%d",&N); fflush(stdin);
D = N/10;
U = N%10;
}while( D + U != 12 );
printf("nn");
system("PAUSE");
}
/***************************Fin del Programa****************************/
/*********************************************************************
Ejercicio 05: Contruya un proceso repetitivo que muestre en forma
ascendente todos los numeros impares comprendidos entre 33 y 9000
*********************************************************************/
#include <iostream>
using namespace std;
void main(){
32. int ini, fin, i;
ini=33;
fin=9000;
i=ini;
while( i<=fin ){
printf("nr %d", i);
i+=2;
}
printf("nn");
system("PAUSE");
}
/***************************Fin del Programa****************************/
/*********************************************************************
Ejercicio 06: Se pide ingresar un numero entero positivo de N cifras,
realice el proceso de invertir dicho numero.
*********************************************************************/
#include <iostream>
using namespace std;
void main(){
long N, nro, nroInv;
int R;
printf("nrIngrese numero de n cifras: "); scanf("%ld",&N); fflush(stdin);
nro=N;
nroInv=R=0; //Inicializamos las dos variables a cero.
do{
R = nro % 10;
nro = nro / 10;
nroInv = (nroInv * 10) + R;
}while( nro > 0 );
printf("nr Nro Invertido: %ld", nroInv);
printf("nn");
system("PAUSE");
}
/***************************Fin del Programa****************************/
/*********************************************************************
Ejercicio 07: Se pide ingresar un numero en base 10, convierta
dicho numero a base 5.
33. *********************************************************************/
#include <iostream>
using namespace std;
void main(){
long N, nro, nroInv, incremento;
int R;
printf("nrIngrese numero en base 10: "); scanf("%ld",&N); fflush(stdin);
nro=N;
nroInv=R=0;
incremento=1;
do{
R = nro % 5;
nro = nro / 5;
nroInv = nroInv + R * incremento;
incremento = incremento * 10;
}while( nro > 0 );
printf("nr Nro Convertido: %ld", nroInv);
printf("nn");
system("PAUSE");
}
/***************************Fin del Programa****************************/
/*********************************************************************
Ejercicio 08: Se pide ingresar una secuencia de numeros, diga
cuantos son pares, impares y multiplos de 7, ademas de la cantidad
de numeros ingresados. El programa acaba cuando se ingresa el
numero cero.
*********************************************************************/
#include <iostream>
using namespace std;
void main(){
int N, cp, ci, c7, ct;
cp=ci=c7=ct=0;
do{
printf("nrIngrese numero : "); scanf("%d",&N); fflush(stdin);
if(N!=0){
if(N%2==0) cp++;
else ci++;
if(N%7==0)c7++;
}
ct++;
}while( N != 0 );
34. printf("nr Cantidad Pares : %ld", cp);
printf("nr Cantidad ImPares : %ld", ci);
printf("nr Cantidad Multiplos 7 : %ld", c7);
printf("nr Total Numeros Ingresados: %ld", ct);
printf("nn");
system("PAUSE");
}
/***************************Fin del Programa****************************/
/*********************************************************************
Ejercicio 09: Se pide sumar y generar la serie fibonacci.
1 1 2 3 5 8 13 21 ...N
*********************************************************************/
#include <iostream>
using namespace std;
void main(){
int N, A, B, i, S;
printf("nrIngrese numero de terminos : "); scanf("%d",&N); fflush(stdin);
// A-> 1 1 2 3 5 8 13 21 ...N
// B-> 1 0 1 1 2 3 5 8
S=i=A=0;
B=1;
do{
A=A + B;
B=A - B;
S+= A;
printf("t%d", A);
i++;
}while( i<N );
printf("nn Suma : %d", S);
printf("nn");
system("PAUSE");
}
/***************************Fin del Programa****************************/
/*********************************************************************
Ejercicio 10: Ingresar una secuencia de numeros, estos deben ser
sumados siempre que:
- Sea Impar
- Sus cifras sean diferentes
- Que la cifra del medio sea cualquiera
35. - Que sea de tres cifras
- Que sea Positivo
*********************************************************************/
#include <iostream>
using namespace std;
void main(){
int nro, U, D, C, S;
bool bandera=true;
S=0;
while(bandera){
printf("nrIngrese numero a evaluar: "); scanf("%d",&nro); fflush(stdin);
bandera = ( nro>=100 && nro <=999 );
if(!bandera)continue;
bandera = ( nro%2!=0 );
if( !bandera )continue;
C = nro / 100 ;
D = (nro % 100) / 10;
U = nro % 10;
bandera = ( C != D && D != U );
if( !bandera )continue;
S+=nro;
}
printf("nnSumatoria: %dnn", S);
system("PAUSE");
}
/***************************Fin del Programa****************************/
/*********************************************************************
Ejercicio 11: Sumar y generar la siguiente secuencia:
a) -1 -2 3 4 -5 -6 7 8...N
b) -1 -2 -3 4 5 6 -7 -8 -9...N
c) -1 -2 -3 -4 5 6 7 8...N
*********************************************************************/
#include <iostream>
using namespace std;
void main(){
int N, i, S, termino, cambio_signo, C;
bool bandera=true;
printf("nrIngrese numero de terminos: "); scanf("%d",&N); fflush(stdin);
36. cambio_signo=2;
S=C=0;
i=1;
while(i<=N){
C++;
if(bandera)
termino = i*-1;
else
termino = i;
printf("%dt", termino);
S+= termino;
if( C == cambio_signo ){
C=0;
bandera = !bandera;
}
i++;
}
printf("nnSumatoria: %dnn", S);
//Para la secuencia b) solo cambie la variable cambio_signo=3
//Para la secuencia c) solo cambie la variable cambio_signo=4
system("PAUSE");
}
/***************************Fin del Programa****************************/
37. 5.6 Anidamiento de bucles
/**********************Inicio del Programa***************************
Ejercicio 01: Se tiene en la billetera S/. 1,000 soles y se desea
comprar varios articulos, pero todos tienen el precio de
S/. 10, S/. 50 y S/. 100 soles. Diga las combinaciones posibles de
compra de tal forma que:
a) No me sobre dinero
b) Me sobre al menos S/. 10 soles
c) Me sobre al menos S/. 500 soles
*********************************************************************/
#include <iostream>
using namespace std;
void main(){
int i100, i50, i10,
final100, final50, final10,
B100=100, B50=50, B10=10;
int Monto=1000, sobra=0, combinacion;
final100 = Monto / B100;
final50 = Monto / B50;
final10 = Monto / B10;
combinacion=0;
for(i100=1;i100<=final100;i100++)
for(i50=1;i50<=final50;i50++)
for(i10=1;i10<=final10;i10++){
if( !((i100*B100 + i50*B50 + i10*B10) == (Monto - sobra)) )continue;
combinacion++;
printf("nrCombinacion: %dtB100: %d B50: %d B10: %d",
combinacion,
i100,
i50,
i10);
}
//Para el punto b) cambiar la variable sobra a 10
//Para el punto c) cambiar la variable sobra a 500
printf("nn");
system("PAUSE");
}
/***************************Fin del Programa****************************/
/**********************Inicio del Programa***************************
Ejercicio 02: Sume u genere la siguiente secuencia de potencias
(base, potencia):
38. (10, 1), (15, 2), (20, 3), (25, 4), ...N
*********************************************************************/
#include <iostream>
using namespace std;
void main(){
int i,j, n, base ;
unsigned long s, termino;//Tipo long sin signo
printf("Ingrese #...");scanf("%d",&n);
base=10;
s=0;
for( i=1 ; i<=n ; i++){
termino=1;
for( j=1 ; j<=i ; j++)
termino = termino * base;
printf("nr(%d, %d) = %u n ",base, i, termino);
base+=5;
s+=termino;
}
printf("nnLa suma es...%u",s);
printf("nn");
system("PAUSE");
}
/***************************Fin del Programa****************************/
/**********************Inicio del Programa***************************
Ejercicio 03: Se pide mostrar y sumar todos los numeros primos de
cuatro cifras.
*********************************************************************/
#include <iostream>
using namespace std;
void main(){
int c,cd,i,j;
long s;
c=s=0;
for(i=1000;i<=9999;i++){
cd=0;
for(j=1;j<=i;j++)
if(i%j==0)
39. cd++;
if(cd==2){
printf("Primo %d : %dnr",c, i);
c++;
s+=i;
}
}
printf("nnrSuma de los # primos de 4 cifras es...%d", s);
printf("nn");
system("PAUSE");
}
/***************************Fin del Programa****************************/
/**********************Inicio del Programa***************************
Ejercicio 04: Se pide mostrar y sumar la secuencia de factoriales.
FACTORIAL DE N TERMINOS S=1!+3!+5!+7!...N
Recordar que:
!3 = 3*2*1
!n = n*(n-1)*(n-2)*...* 1
*********************************************************************/
#include <iostream>
using namespace std;
void main(){
int n,i,j;
unsigned long s, termino;
printf("Ingrese #...");scanf("%d",&n);
s=0;
for(i=1;i<=n*2;i+=2){
termino=1;
for(j=1;j<=i;j++)
termino*=j;
printf("!%d = %un", i, termino);
s+=termino;
}//CIERRE FOR
printf("nnLa suma es...%u",s);
printf("nn");
system("PAUSE");
}
/***************************Fin del Programa****************************/
40. /**********************Inicio del Programa***************************
Ejercicio 05: Sume u muestre todos los numeros perfectos entre
5 y 1000.
*********************************************************************/
#include <iostream>
using namespace std;
void main(){
int i,j, sd, s;
s=0;
for(i=5;i<=1000;i++){
sd=0;
for(j=1;j<=i/2;j++)
if(i%j==0)
sd+=j;
if(sd==i){
printf("Es perfecto..%dn", i);
s+=i;
}
}
printf("nnLa suma es...%d",s);
printf("nn");
system("PAUSE");
}
/***************************Fin del Programa****************************/
/**********************Inicio del Programa***************************
Ejercicio 06: Sume y genere la siguiente secuencia:
1! 1 2! 1 3! 2 4! 3 5! 5 ...N
*********************************************************************/
#include <iostream>
using namespace std;
void main(){
int n,i;
unsigned long S, termino;
int A, B;//fibonacci
int j, terminofac;//factorial
41. printf("Ingrese #...");scanf("%d",&n);
// 1! 1 2! 1 3! 2 4! 3 5! 5 ...N
// 1! 2! 3! 4! 5! =>factorial
// 1 1 2 3 5 =>fibonacci
// 1 2 3 4 5 6 7 8 9 10...N -> i
S=0;
A=0;B=1;//fibonacci
terminofac=0;//factorial
for(i=1;i<=n;i++){
if(i%2==0){//fibonacci
A=A+B;
B=A-B;
termino = A;
printf("%un", termino);
}else{//factorial
terminofac++;
termino=1;
printf("%d! = ", terminofac);
for( j=1 ; j<=terminofac ; j++ ){
termino = termino * j;
if(j < terminofac)
printf("%d * ", j);
else
printf("%d", j);
}
printf(" = %un", termino);
}
S+=termino;
}
printf("nnLa suma es...%u",S);
printf("nn");
system("PAUSE");
}
/***************************Fin del Programa****************************/
/**********************Inicio del Programa***************************
Ejercicio 07: Ingrese por teclado el numerador y denominador de una
fraccion, visualice la fraccion simplificada, o la fraccion original
de no poderse simplificar.
*********************************************************************/
#include <iostream>
using namespace std;
void main(){
42. int n,m, i, mayor, menor, ns, ms;
printf("Ingrese numerador...");scanf("%d",&n);
printf("Ingrese denominador...");scanf("%d",&m);
mayor=n;
if(m>mayor)mayor=m;
ns=n;
ms=m;
for(i=mayor;i>=1;i--)
if(ns%i==0 && ms%i==0){
ns=ns/i;
ms=ms/i;
}
printf("nnNumerador simplificado...%d",ns);
printf("nnDenominador simplificado...%d",ms);
printf("nn");
system("PAUSE");
}
/***************************Fin del Programa****************************/
/**********************Inicio del Programa***************************
Ejercicio 07: Ingrese por teclado el numerador y denominador de una
fraccion, visualice la fraccion simplificada, o la fraccion original
de no poderse simplificar.
*********************************************************************/
#include <iostream>
using namespace std;
void main(){
int n,m, i, mayor, menor, ns, ms;
printf("Ingrese numerador...");scanf("%d",&n);
printf("Ingrese denominador...");scanf("%d",&m);
mayor=n;
if(m>mayor)mayor=m;
ns=n;
ms=m;
for(i=mayor;i>=1;i--)
if(ns%i==0 && ms%i==0){
ns=ns/i;
ms=ms/i;
}
printf("nnNumerador simplificado...%d",ns);
printf("nnDenominador simplificado...%d",ms);
43. printf("nn");
system("PAUSE");
}
/***************************Fin del Programa****************************/
/**********************Inicio del Programa***************************
Ejercicio 08:Ingresar por teclado un numero (1-3999).
Mostrar el numero en romanos.
*********************************************************************/
#include <iostream>
using namespace std;
void main(){
int n,u,d,c,m, i;
char r;
do{
printf("nnrIngrese Numero(1-3999)..."; scanf("%d",&n); fflush(stdin);
m=n/1000;
c=(n%1000)/100;
d=((n%1000)%100)/10;
u=n%10;
printf("nntt";
for(i=1;i<=m;i++)
printf("M");
if(c==9)
printf("CM");
else
for(i=1;i<=c;i++)
printf("C");
if(d==9)
printf("XC");
else
for(i=1;i<=d;i++)
printf("X");
switch(u){
case 1:printf("I");break;
case 2:printf("II");break;
case 3:printf("III");break;
case 4:printf("IV");break;
case 5:printf("V");break;
case 6:printf("VI");break;
case 7:printf("VII");break;
case 8:printf("VIII");break;
case 9:printf("IX");break;
44. }
printf("nnDesea Continuar S/N ";
r=getchar();
}while(r=='s'|| r=='S');
printf("nn");
system("PAUSE");
}
/***************************Fin del Programa****************************/
/**********************Inicio del Programa***************************
Ejercicio 09: Caja de Prestamos a Plazos con descuentos
Se pide ingresar por teclado el monto, tasa de interes
y duracion de un prestamo a asignar a un cliente.
Debe mostrar el monto a entregar, ademas dar la opcion si desea entregar
exactamente el monto solicitado.
Debera mostrar las cuotas a pagar por meses.
*********************************************************************/
#include <iostream>
using namespace std;
void main(){
const double MES=12;
double cant, tasa, ncant, cant_sug, pag_men, inte;
int tiempo;char op;
printf("ntttPRESTAMOS A PLAZOS CON DESCUENTOS");
printf("nnIngrese monto de dinero que necesita...");
scanf("%lf",&cant); fflush(stdin);
printf("nIngrese tasa de interes...");
scanf("%lf",&tasa); fflush(stdin);
printf("nIngrese duracion de prestamo (En meses)...");
scanf("%d",&tiempo); fflush(stdin);
inte=((cant*tasa) / 100) * (tiempo / MES);
ncant=cant - inte;
pag_men=cant / tiempo;
printf("nnUsted recibira %1.2f y los pagara en %d meses con cuotas de %1.2f.",
ncant, tiempo, pag_men);
printf("nn1. Esta conforme con lo que recibe.n2. Desea recibir %1.2f", cant);
printf("nnIgrese Opcion: ");
op=getchar(); fflush(stdin);
switch(op){
case '2':
cant_sug=cant;
45. do{
cant_sug+=0.1;
inte=((cant_sug*tasa) / 100) * (tiempo / MES);
ncant=cant_sug - inte;
pag_men=cant_sug / tiempo;
}while(ncant < cant);
printf("nnUsted debe solicitar %1.2lf y los pagara en %d meses con cuotas de %1.2lf.",
cant_sug, tiempo, pag_men); break;
default: break;
}
printf("nn");
system("PAUSE");
}
/***************************Fin del Programa****************************/