1. Sean los siguientes datos:
Procesos Universales Básicos
Aplicados a todos los datos
Letra Peso
F 4
D 6
B 5
C 2
E 1
Solución con C++ (ciclo do - while)
int cont = 0;
char letra, resp;
do{
cout << “Presione una letra: ” << endl;
cin >> letra;
cont++;
cout << “Hay otra letra a procesar? S-N?” << endl;
cin >> resp;
} while (resp == „s‟ or resp == „S‟);
cout << “Hay” << cont << “ Letras” << endl;
Proceso Universal: Contar
• Ej: Determinar la cantidad de letras procesadas. R: Hay 5 Letras
• Abstracción: Se cuenta, incrementando en 1 una variable contador
2. Sean los siguientes datos:
Procesos Universales Básicos
Aplicados a todos los datos
Letra Peso
F 4
D 6
B 5
C 2
E 1
Solución con C++ (ciclo while)
int cont = 0;
char letra, resp;
cout << “Hay datos para procesar? S-N?” << endl;
cin >> resp;
while (resp == „s‟ or resp == „S‟){
cout << “Presione una letra” << endl;
cin >> letra;
cont++;
cout << “Hay otra letra a procesar? S-N?” << endl;
cin >> resp;
}
cout << “Hay” << cont << “ Letras” << endl;
Proceso Universal: Contar
• Ej: Determinar la cantidad de letras procesadas. R: Hay 5 Letras
• Abstracción: Se cuenta, incrementando en 1 una variable contador
3. Sean los siguientes datos:
Procesos Universales Básicos
Aplicados a todos los datos
Letra Peso
F 4
D 6
B 5
C 2
E 1
Solución con C++ (ciclo do - while)
float peso, acum = 0;
char resp;
do{
cout << “Introduzca el Peso: ” << endl;
cin >> peso;
acum += peso;
cout << “Hay otro peso a procesar? S-N?” << endl;
cin >> resp;
} while (resp == „s‟ or resp == „S‟);
cout << “La suma es ” << acum << endl;
Proceso Universal: Acumular
• Ej: Determinar la suma de los pesos procesadas. R: La suma es 18
• Abstracción: Se acumulan todos los pesos
4. Sean los siguientes datos:
Procesos Universales Básicos
Aplicados a todos los datos
Letra Peso
F 4
D 6
B 5
C 2
E 1
Solución con C++ (ciclo for) Solución con C++ (ciclo while)
float peso, acum = 0;
int cant_pesos;
cout << “Cuantos pesos son: ” <<
endl;
cin >> cant_pesos;
for (int i = 0; i < cant_pesos; i++){
cout << “Introduzca el Peso: ” <<
endl;
cin >> peso;
acum += peso;
}
cout << “La suma es ” << acum <<
endl;
float peso, acum = 0;
char resp;
cout << “Hay datos para procesar? S-N?”
<< endl;
cin >> resp;
while (resp == „s‟ or resp == „S‟){
cout << “Introduzca el Peso” << endl;
cin >> peso;
acum += peso;
cout << “Hay otro peso? S-N?” << endl;
cin >> resp;
}
cout << “La suma es ” << acum << endl;
Proceso Universal: Acumular
• Ej: Determinar la suma de los pesos procesadas. R: La suma es 18
• Abstracción: Se acumulan todos los pesos
5. Sean los siguientes datos:
Procesos Universales Básicos
Aplicados a todos los datos
Letra Peso
F 4
D 6
B 5
C 2
E 1
Proceso Universal: Mayor o Menor:
Ej: Cual es el mayor/menor peso? Se Compara cada peso contra una variable auxiliar (mayor
o menor) y se actualiza el mayor/menor peso, según sea requerido. R. El mayor peso es 6
Solución con C++ (ciclo do - while)
float peso, mayor = 0;
char resp;
do{
cout << “Introduzca el Peso: ” << endl;
cin >> peso;
if (peso > mayor)
mayor = peso;
cout << “Hay otro peso a procesar? S-N?” << endl;
cin >> resp;
} while (resp == „s‟ or resp == „S‟);
cout << “El mayor peso es ” <<mayor<<endl;
6. Sean los siguientes datos:
Procesos Universales Básicos
Aplicados a todos los datos
Letra Peso
F 4
D 6
B 5
C 2
E 1
Solución con C++ (ciclo for) Solución con C++ (ciclo while)
float peso, mayor = 0;
int cant_pesos;
cout << “Cuantos pesos son: ” << endl;
cin >> cant_pesos;
for (int i = 0; i < cant_pesos; i++){
cout << “Introduzca el Peso: ” << endl;
cin >> peso;
if (peso > mayor)
mayor = peso;
}
cout << “El mayor peso es ”
<<mayor<<endl;
float peso, mayor = 0;
char resp;
cout << “Hay datos para procesar? S-N?” <<
endl;
cin >> resp;
while (resp == „s‟ or resp == „S‟){
cout << “Introduzca el Peso: ” << endl;
cin >> peso;
if (peso > mayor)
mayor = peso;
cout << “Hay otro peso? S-N?” << endl;
cin >> resp;
}
cout << “El mayor peso es ”<< mayor<< endl;
Proceso Universal: Mayor o Menor:
Ej: Cual es el mayor/menor peso? Se Compara cada peso contra una variable auxiliar (mayor
o menor) y se actualiza el mayor/menor peso, según sea requerido. R. El mayor peso es 6
7. Sean los siguientes datos:
Procesos Universales Básicos
Aplicados a todos los datos
Letra Peso
F 4
D 6
B 5
C 2
E 1
Proceso Universal: Promedio
Ej: Cual es el peso promedio? R: El peso promedio es 3.6
Abstracción: Se suman los pesos y se divide entre la cantidad de pesos (4+6+5+2+1)/5 =18/5
Solución con C++ (ciclo do - while)
float peso, acum = 0; int cont = 0;
char resp;
do{
cout << “Introduzca el Peso: ” << endl; cin >> peso;
acum += peso;
cont++;
cout << “Hay otro peso a procesar? S-N?” << endl;
cin >> resp;
} while (resp == „s‟ or resp == „S‟);
cout << “El peso promedio es ”;
if (cont == 0)
cout << 0 << endl;
else cout << acum / cont << endl;
8. Sean los siguientes datos:
Procesos Universales Básicos
Aplicados a todos los datos
Letra Peso
F 4
D 6
B 5
C 2
E 1
Solución con C++ (ciclo for) Solución con C++ (ciclo while)
float peso, acum = 0;
int cant_pesos;
cout << “Cuantos pesos son: ” << endl;
cin >> cant_pesos;
for (int i = 0; i < cant_pesos; i++){
cout << “Introduzca el Peso: ” << endl;
cin >> peso;
acum += peso;
}
cout << “El peso promedio es ”;
if (cont == 0)
cout << 0 << endl;
else cout << acum / cant_pesos<< endl;
float peso, acum = 0; int cont = 0;
char resp;
cout <<“Hay datos para procesar? S-N?”
<<endl;
cin >> resp;
while (resp == „s‟ or resp == „S‟){
cout << “Peso: ” << endl; cin >> peso;
acum += peso; cont++;
cout << “Hay otro peso? S-N?” << endl;
cin >> resp;
}
cout << “El peso promedio es ”;
if (cont == 0)
cout << 0 << endl;
else cout << acum / cont << endl;
Proceso Universal: Promedio
Ej: Cual es el peso promedio? R: El peso promedio es 3.6
Abstracción: Se suman los pesos y se divide entre la cantidad de pesos (4+6+5+2+1)/5 =18/5
9. Sean los siguientes datos:
Procesos Universales Básicos
Aplicados a todos los datos
Letra Peso
F 4
D 6
B 5
C 2
E 1Proceso Universal: Porcentaje
Ej: cual es el porcentaje de pesos impares? R. El porcentaje de pesos impares es 40%
Abstracción: Se cuentan los pesos impares, se divide entre la cantidad total y se multiplica
por 100, esto es cantidad parcial entre cantidad total por 100 (2/5*100 = 40)
Solución con C++ (ciclo do - while)
int cont_parcial=0, cont_total = 0;
int peso; char resp;
do{
cout << “Introduzca el Peso: ” << endl; cin >> peso;
if (peso % 2 != 0)
cont_parcial++;
cont_total++;
cout << “Hay otro peso a procesar? S-N?” << endl;
cin >> resp;
} while (resp == „s‟ or resp == „S‟);
cout << “El porcentaje de pesos impares es: ”;
if (cont_total == 0)
cout << 0;
else cout << cont_parcial*100/cont_total;
cout << endl;
10. Sean los siguientes datos:
Procesos Universales Básicos
Aplicados a todos los datos Letra Peso
F 4
D 6
B 5
C 2
E 1
Solución con C++ (ciclo for) Solución con C++ (ciclo while)
int cont_parcial = 0, cant_pesos, peso;
cout << “Cuantos pesos son: ” << endl;
cin >> cant_pesos;
for (int i = 0; i < cant_pesos; i++){
cout << “Introduzca el Peso: ” << endl;
cin >> peso;
if (peso % 2 != 0)
cont_parcial++;
}
cout <<“El porcentaje de pesos impares es: ”;
if (cant_pesos == 0)
cout << 0;
else cout << cont_parcial*100 / cant_pesos;
cout << endl;
int cont_parcial = 0, cont_total = 0;
int peso; char resp;
cout << “Hay datos para procesar? S-N?”;
cin >> resp;
while (resp == „s‟ or resp == „S‟){
cout << “Peso: ” << endl; cin >> peso;
if (peso % 2 != 0)
cont_parcial++;
cont_total++;
cout << “Hay otro peso? S-N?” << endl;
cin >> resp;
}
cout << “El porcentaje de pesos impares es ”;
if (cont_total == 0)
cout << 0;
else cout << cont_parcial / cont_total * 100
<< endl;
Proceso Universal: Porcentaje
Ej: cual es el porcentaje de pesos impares? R. El porcentaje de pesos impares es 40%
Abstracción: Se cuentan los pesos impares, se divide entre la cantidad total y se multiplica
por 100, esto es cantidad parcial entre cantidad total por 100 (2/5*100 = 40)
11. Sean los siguientes datos: Letra Peso
F 4
D 6
B 5
C 2
E 1
Solución con C++ (ciclo do - while)
int cont = 0, peso;
char resp;
do{
cout << “Introduzca el Peso: ” << endl;
cin >> peso;
if (peso % 2 == 0)
cont++;
cout << “Hay otro peso a procesar? S-N?” << endl;
cin >> resp;
} while (resp == „s‟ or resp == „S‟);
cout << “La cantidad de pesos pares es: ” << cont << endl;
Proceso Universal: Contar
• Ej: Determine la cantidad de pesos pares. R. La cantidad de pesos pares es 3
• Abstracción: Se cuentan sólo los datos que cumplen con un criterio, en este caso los pesos pares
Procesos Universales Básicos
Aplicados a datos filtrados
12. Sean los siguientes datos: Letra Peso
F 4
D 6
B 5
C 2
E 1
Solución con C++ (ciclo for) Solución con C++ (ciclo while)
int peso, cant_pesos, cont = 0;
cout << “Cuantas pesos son: ” << endl;
cin >> cant_pesos;
for (int i = 0; i < cant_pesos; i++){
cout << “Introduzca el Peso: ” << endl;
cin >> peso;
if (peso % 2 == 0)
cont++;
}
cout << “La cantidad de pesos pares es ”
<< cont << endl;
int cont = 0, peso;
char resp;
cout << “Hay datos para procesar? S-N?” << endl;
cin >> resp;
while (resp == „s‟ or resp == „S‟){
cout << “Introduzca el Peso: ” << endl;
cin >> peso;
if (peso % 2 == 0)
cont++;
cout << “Hay otro peso? S-N?” << endl;
cin >> resp;
}
cout << “La cantidad de pesos pares es ”
<< cont << endl;
Procesos Universales Básicos
Aplicados a datos filtrados
Proceso Universal: Contar
• Ej: Determine la cantidad de pesos pares. R. La cantidad de pesos pares es 3
• Abstracción: Se cuentan sólo los datos que cumplen con un criterio, en este caso los pesos pares
13. Sean los siguientes datos: Letra Peso
F 4
D 6
B 5
C 2
E 1
Solución con C++ (ciclo do - while)
int peso, acum = 0;
char resp;
do{
cout << “Introduzca el Peso: ” << endl;
cin >> peso;
if (peso % 2 == 0)
acum += peso;
cout << “Hay otro peso a procesar? S-N?” << endl;
cin >> resp;
} while (resp == „s‟ or resp == „S‟);
cout << “La suma de los pesos pares es “
<< acum << endl;
Procesos Universales Básicos
Aplicados a datos filtrados
Proceso Universal: Acumular
• Ej: Determinar la suma de los pesos pares. R: La suma de los pesos pares es 12
• Abstracción: Se acumulan solo los pesos que cumplen con el criterio de ser pares
14. Sean los siguientes datos: Letra Peso
F 4
D 6
B 5
C 2
E 1
Solución con C++ (ciclo for) Solución con C++ (ciclo while)
int cant_pesos, peso, acum = 0;
cout << “Cuantos pesos son: ” << endl;
cin >> cant_pesos;
for (int i = 0; i < cant_pesos; i++){
cout << “Introduzca el Peso: ” << endl;
cin >> peso;
if (peso % 2 == 0)
acum += peso;
}
cout << “La suma de los pesos pares es “
<< acum << endl;
int peso, acum = 0;
char resp;
cout << “Hay datos para procesar? S-N?” << endl;
cin >> resp;
while (resp == „s‟ or resp == „S‟){
cout << “Introduzca el Peso: ” << endl;
cin >> peso;
if (peso % 2 == 0)
acum += peso;
cout << “Hay otro peso? S-N?” << endl;
cin >> resp;
}
cout << “La suma de los pesos pares es “
<< acum << endl;
Procesos Universales Básicos
Aplicados a datos filtrados
Proceso Universal: Acumular
• Ej: Determinar la suma de los pesos pares. R: La suma de los pesos pares es 12
• Abstracción: Se acumulan solo los pesos que cumplen con el criterio de ser pares
15. Sean los siguientes datos: Letra Peso
F 4
D 6
B 5
C 2
E 1
Solución con C++ (ciclo do - while)
int peso, mayor = 0;
char resp;
do{
cout << “Introduzca el peso: ” << endl;
cin >> peso;
if (peso % 2 != 0 and peso > mayor)
mayor = peso;
cout << “Hay otro peso a procesar? S-N?” << endl;
cin >> resp;
} while (resp == „s‟ or resp == „S‟);
cout << “El mayor peso impar es: ” << mayor << endl;
Procesos Universales Básicos
Aplicados a datos filtrados
Proceso Universal: Mayor o Menor:
• Ej: Cuál es el mayor peso impar? R. El mayor peso impar es 5. Abstracción: Se Compara cada peso que
cumple con el criterio de ser impar contra una variable auxiliar (mayor) y se actualiza dicha variable.
16. Sean los siguientes datos: Letra Peso
F 4
D 6
B 5
C 2
E 1
Solución con C++ (ciclo for) Solución con C++ (ciclo while)
int cant_pesos, peso, mayor = 0;
cout << “Cuantos pesos son: ” << endl;
cin >> cant_pesos;
for (int i = 0; i < cant_pesos; i++){
cout << “Introduzca el Peso: ” << endl;
cin >> peso;
if (peso % 2 != 0 and peso > mayor)
mayor = peso;
}
cout <<“El mayor peso impar es: ”<<mayor
<< endl;
int peso, mayor = 0;
char resp;
cout << “Hay datos para procesar? S-N?” << endl;
cin >> resp;
while (resp == „s‟ or resp == „S‟){
cout << “Introduzca el Peso: ” << endl;
cin >> peso;
if (peso % 2 != 0 and peso > mayor)
mayor = peso;
cout << “Hay otro peso? S-N?” << endl;
cin >> resp;
}
cout <<“El mayor peso impar es: ” <<mayor<<endl;
Procesos Universales Básicos
Aplicados a datos filtrados
Proceso Universal: Mayor o Menor:
• Ej: Cuál es el mayor peso impar? R. El mayor peso impar es 5.
• Abstracción: Se Compara cada peso que cumple con el criterio de ser impar contra una
variable auxiliar (mayor) y se actualiza dicha variable.
17. Sean los siguientes datos:
Letra Peso
F 4
D 6
B 5
C 2
E 1Proceso Universal: Promedio
Ej: El promedio de los pesos impares. R. El promedio de los pesos impares es 3
Abstracción: Se suman solo los pesos que cumplen con el criterio de ser impares y se divide entre la
cantidad de pesos que cumplen dicho criterio, esto es (5+1)/2 = 6/2
Solución con C++ (ciclo do - while)
int peso, acum = 0, cont = 0;
char resp;
do{
cout << “Introduzca el Peso: ” << endl;
cin >> peso;
if (peso % 2 != 0){
acum += peso;
cont++;
}
cout << “Hay otro peso a procesar? S-N?” << endl;
cin >> resp;
} while (resp == „s‟ or resp == „S‟);
cout << “El promedio de los pesos impares es ”;
if (cont == 0)
cout << 0 << endl;
else cout << acum / cont << endl;
Procesos Universales Básicos
Aplicados a datos filtrados
18. Sean los siguientes datos: Letra Peso
F 4
D 6
B 5
C 2
E 1
Solución con C++ (ciclo for) Solución con C++ (ciclo while)
int cont=0, peso, acum = 0, cant_pesos;
cout << “Cuantos pesos son: ” << endl;
cin >> cant_pesos;
for (int i = 0; i < cant_pesos; i++){
cout << “Peso: ” << endl; cin >> peso;
if (peso % 2 != 0){
acum += peso;
cont++;
}
}
cout<<“El promedio de los pesos impares es “;
if (cont == 0)
cout << 0;
else cout << acum / cont;
int cont = 0, peso, acum = 0;
char resp;
cout << “Hay datos para procesar? S-N?”;
cin >> resp;
while (resp == „s‟ or resp == „S‟){
cout << “Peso: ”; cin >> peso;
if (peso % 2 == 0){
acum += peso; cont++;
}
cout << “Hay otro peso? S-N?” << endl;
cin >> resp;
}
cout<<“El promedio de los pesos impares es ”;
if (cont == 0)
cout<< 0;
else cout << acum / cont;
Procesos Universales Básicos
Aplicados a datos filtrados
Proceso Universal: Promedio
Ej: El promedio de los pesos impares. R. El promedio de los pesos impares es 3
Abstracción: Se suman solo los pesos que cumplen con el criterio de ser impares y se divide entre la
cantidad de pesos que cumplen dicho criterio, esto es (5+1)/2 = 6/2
19. Sean los siguientes datos: Letra Peso
F 4
D 6
B 5
C 2
E 1
Proceso Universal: Porcentaje
Ej: Porcentaje de pesos pares mayores que 2
R. Es 66,67%
Solución con C++ (ciclo do - while)
int cont_parcial = 0, cont_total = 0, peso;
char resp;
do{
cout << “Introduzca el Peso: ” << endl; cin >> peso;
if (peso % 2 == 0){
cont_total++;
if (peso > 2)
cont_parcial++;
}
cout << “Hay otro peso a procesar? S-N?” << endl;
cin >> resp;
} while (resp == „s‟ or resp == „S‟);
cout << “El porcentaje de los pesos pares mayores a 2 es: ”;
if (cont_total == 0)
cout << 0;
else cout << cont_parcial / cont_total*100<<endl;
Procesos Universales Básicos
Aplicados a datos filtrados
Abstracción: Se cuentan los pesos pares mayores que 2, se divide entre la cantidad de pesos
pares y se multiplica por 100, esto es, 2/3*100 = 66.67
20. Sean los siguientes datos:
Letra Peso
F 4
D 6
B 5
C 2
E 1
Solución con C++ (ciclo for) Solución con C++ (ciclo while)
int cant_pesos,cont_parcial=0,cont_total=0, peso;
cout << “Cuantos pesos son: ” << endl;
cin >> cant_pesos;
for (int i = 0; i < cant_pesos; i++){
cout << “Peso: ” ; cin >> peso;
if (peso % 2 == 0){
cont_total++;
if (peso > 2)
cont_parcial++;
}
}
cout << “El porcentaje de los pesos pares mayores
a 2 es: ”;
if (cont_total == 0)
cout << 0;
else cout << cont_parcial / cont_total * 100;
cout << endl;
int cont_parcial= 0,cont_total= 0, peso;
char resp;
cout << “Hay datos para procesar? S-N?”;
cin >> resp;
while (resp == „s‟ or resp == „S‟){
cout << “Peso: ”; cin >> peso;
if (peso % 2 == 0){
cont_total++;
if (peso > 2)
cont_parcial++;
}
cout << “Hay otro peso? S-N?” << endl;
cin >> resp;
}
cout << “El porcentaje de los pesos
pares mayores a 2 es ”;
if (cont_total == 0)
cout << 0;
else cout << cont_parcial/cont_total*100;
Procesos Universales Básicos
Aplicados a datos filtrados
Proceso Universal: Porcentaje
Ej: Porcentaje de pesos pares mayores que 2
R. Es 66,67%
Abstracción: Se cuentan los pesos pares mayores que 2, se divide entre la cantidad de pesos
pares y se multiplica por 100, esto es, 2/3*100 = 66.67
21. Nombre Cédula Nota
Luis 444 55
Carla 222 30
Ana 555 60
Mery 333 80
Juan 999 20
EJERCICIO 1: Se conoce la siguiente información de varios estudiantes: nombre,
cédula y nota (sobre 100 y aprueban con 48). Se desea determinar para varios
estudiantes: a) La mejor nota, b) La nota promedio de los reprobados, c) El nombre
del mejor estudiante.
Ejercicios Propuestos
Programar usando extractos de programas de C++, según se mostró previamente,
aplicando los ciclos for, while y do-while
22. EJERCICIO 2: Observando la siguiente tabla de datos de entrada, se tiene una lista de
productos a comprar, de los cuales se conoce: cantidad y costo unitario.
cantidad costo
3 40
2 50
5 10
Responder: a) cuantos productos cuestan más de Bs 20, b) Cuál es el costo promedio
de los productos, c) Qué cantidad de productos tiene la compra con mayor costo
unitario.
EJERCICIO 3: Una empresa Aseguradora requiere un programa para el control de sus
pólizas. Cada póliza posee un número de identificación único y el monto a asegurar.
Plantee los datos de prueba para 5 pólizas y calcule: a) el monto total que tiene
asegurado la empresa, b) el código de identificación de la póliza con menor monto.
Ejercicios Propuestos
Programar usando extractos de programas de C++, según se mostró previamente,
aplicando los ciclos for, while y do-while