Está en la página 1de 16

L05 -Estructuras cíclicas (for/while/do-while)

1. Realice el algoritmo para generar la serie: 1, 2, 3, …, 10


#include <iostream>
using namespace std;

main(){

cout<< "La serie es: \n";

for( int i=1; i<=10; i++ ){


cout<< i <<endl;
}

system("pause");
system("cls");
}
2. Realice el algoritmo para generar la serie: 2, 6, 10, …, 40
#include <iostream>
using namespace std;

main(){

cout<< "La serie es: \n";

for( int i=2; i<=38; i+=4 ){


cout<< i <<endl;
}

system("pause");
system("cls");
}
3. Realice el algoritmo para generar la serie: 20, 19, 18, …, 3
#include <iostream>
using namespace std;

main(){

cout<< "La serie es: \n";

for( int i=20; i>=3; i-- ){


cout<< i <<endl;
}

system("pause");
system("cls");
}

Jorge Martel - Página 1 de 2


L05 -Estructuras cíclicas (for/while/do-while)

4. Realice el algoritmo para generar la serie: 20, 16, 12, …, de A términos. Luego presente la suma de la serie
#include <iostream>
using namespace std;
int A=0, N=0, S=0;

main(){

cout<< "Ingrese el numero de terminos: ";


cin>> A;
N = 22-(A*4);
system("cls");

cout<< "La serie es: \n";

for( int i=20; i>=N; i-=4 ){


S+=i;
cout<< i <<endl;
}

cout<< "La suma de terminos es: "<< S <<endl;

system("pause");
system("cls");
}
5. Realice el algoritmo para generar la serie: 3, 5, 7 …, de A términos. Luego presente la suma de la serie
#include <iostream>
using namespace std;
int A=0, N=0, S=0;

main(){

cout<< "Ingrese el numero de terminos: ";


cin>> A;
N = 3+(A*2);
system("cls");

cout<< "La serie es: \n";

for( int i=3; i<N; i+=2 ){


cout<< i <<endl;
S+=i;
}

cout<< "La suma de terminos es: "<< S <<endl;

system("pause");
system("cls");
}

Jorge Martel - Página 2 de 2


L05 -Estructuras cíclicas (for/while/do-while)

6. Realice el algoritmo para generar la serie: 4, 8, 12, … de A términos. Luego presente la suma de la serie
#include <iostream>
using namespace std;
int A=0, N=0, S=0;

main(){

cout<< "Ingrese el numero de terminos: ";


cin>> A;
N = 4+(A*4);
system("cls");

cout<< "La serie es: \n";

for( int i=4; i<N; i+=4 ){


cout<< i <<endl;
S+=i;
}

cout<< "La suma de terminos es: "<< S <<endl;

system("pause");
system("cls");
}
7. Realice el algoritmo para generar la serie: 18, 15, 12 …de A términos. Luego presente la suma de la serie
#include <iostream>
using namespace std;
int A=0, N=0, S=0;

main(){

cout<< "Ingrese el numero de terminos: ";


cin>> A;
N = 18-(A*3);
system("cls");

cout<< "La serie es: \n";

for( int i=18; i>N; i-=3 ){


cout<< i <<endl;
S+=i;
}

cout<< "La suma de terminos es: "<< S <<endl;

system("pause");
system("cls");
}

Jorge Martel - Página 3 de 2


L05 -Estructuras cíclicas (for/while/do-while)

8. Realice el algoritmo para generar la serie: 200, 150, 100, … de A términos. Luego presente la suma de la
serie.
#include <iostream>
using namespace std;
int A=0, N=0, S=0;

main(){

cout<< "Ingrese el numero de terminos: ";


cin>> A;
N = 200-(A*50);
system("cls");

cout<< "La serie es: \n";

for( int i=200; i>N; i-=50 ){


cout<< i <<endl;
S+=i;
}

cout<< "La suma de terminos es: "<< S <<endl;

system("pause");
system("cls");
}
9. Se requiere un algoritmo para obtener la suma y promedio de diez cantidades cualesquiera.
#include <iostream>
using namespace std;
int a=0;
float s=0;

main(){

for( int i=0; i<10; i++ ){


cout<< "ingrese una cantidad: ";
cin>>a;
s+=a;
}

cout<<endl;
cout<< "La suma es : " << s <<endl;
cout<< "El promedio es: " << s/10.0f <<endl;

system("pause");
system("cls");
}

Jorge Martel - Página 4 de 2


L05 -Estructuras cíclicas (for/while/do-while)

10. Se requiere un algoritmo para obtener la edad promedio de un grupo de N alumnos


#include <iostream>
using namespace std;
int a=0, N=0;
float s=0;
main(){

cout<< "Ingrese el numero de alumnos: ";


cin>> N;

for( int i=0; i<N; i++ ){


cout<< "ingrese una edad: "; cin>>a;
s+=a;
}

cout<<endl;
cout<< "La edad promedio es: " << (float) s/N <<endl;

system("pause");
system("cls");
}
11. Se requiere un algoritmo para obtener la estatura promedio de un grupo de N alumnos. También se
requiere saber cuál es la mayor estatura y la menor estatura.
#include <iostream>
using namespace std;
int N=0;
float s=0, a=0, b=0, c=2.0f;

main(){

cout<< "Ingrese el numero de alumnos: ";


cin>> N;
for( int i=0; i<N; i++ ){
do{
cout<< "ingrese una estatura: "; cin>>a;
}while( !(a>0) && !(a<2.0f) );
if( a>b ){
b=a;
}
if( a<c ){
c=a;
}
s+=a;
}

cout<<endl;
cout<< "La estatura promedio es: " << (float) s/N <<endl;
cout<< "El numero mayor es: " << b <<endl;
cout<< "El numero menor es: " << c <<endl;

system("pause");
system("cls");
}
Jorge Martel - Página 5 de 2
L05 -Estructuras cíclicas (for/while/do-while)

12. Se requiere un algoritmo para obtener el sueldo promedio de un grupo de empleados, cuyo número de
miembros se desconoce. El ciclo debe efectuarse siempre y cuando se tenga una estatura registrada.
#include <iostream>
using namespace std;
int N=0;
float s=0, a=0, b=0, c=2.0f;

main(){

cout<< "Ingrese el numero de empleados: ";


cin>> N;
for( int i=0; i<N; i++ ){

cout<< "ingrese el sueldo del "<< i+1 << " empleado: ";
cin>>a;
s+=a;
}

cout<<endl;
cout<< "El sueldo promedio es: " << (float) s/N <<endl;

system("pause");
system("cls");
}
13. Se requiere un algoritmo para determinar cuánto ahorrará una persona en un año. Se sabe que hasta el fin
de cada mes deposita cantidades variables de dinero; además, se requiere saber cuánto lleva ahorrado
cada mes.
#include <iostream>
using namespace std;
int a=0;
float s=0;

main(){

for( int i=0; i<12; i++ ){


cout<< "ingrese una cantidad: ";
cin>>a;
s+=a;
cout<< "Este mes lleva " << s << " ahorrado.\n";
}

cout<<endl;
cout<< "En el año ha ahorrado: " << s <<endl;

system("pause");
system("cls");
}

Jorge Martel - Página 6 de 2


L05 -Estructuras cíclicas (for/while/do-while)

14. Se requiere un algoritmo para determinar, de N cantidades, cuántas son menores, iguales a cero, o cuántas
mayores a cero.
#include <iostream>
using namespace std;
int a=0, b=0, c=0, d=0, N;

main(){

cout<< "Ingrese el numero de cantidades a evaluar: ";


cin>> N;
for( int i=0; i<N; i++ ){
cout<< "ingrese una cantidad: ";
cin>>a;
if( a>0 ){
b++;
}
if( a<0 ){
c++;
}
if( a==0 ){
d++;
}
}

cout<<endl;
cout<< "Son mayores a 0: " << b <<endl;
cout<< "Son menores a 0: " << c <<endl;
cout<< "Son iguales a 0: " << d <<endl;

system("pause");
system("cls");
}
15. Realice un algoritmo para generar e imprimir los números pares y múltiples de 4 que se encuentran entre
0 y 100.
#include <iostream>
using namespace std;

main(){

cout<< "La serie es: \n";

for( int i=4; i<100; i+=4 ){


cout<< "\t" << i <<"\n\n";
}

system("pause");
system("cls");
}

Jorge Martel - Página 7 de 2


L05 -Estructuras cíclicas (for/while/do-while)

16. Realizar el algoritmo para obtener la factorial de N.


#include <iostream>
using namespace std;
int N, a=1;

main(){

cout<< "Ingrese el numero: ";


cin>> N;
for( int i=N; i>0; i-- ){
a*=i;
}

cout<< "\t" << a <<endl<<endl;

system("pause");
system("cls");
}
17. Realice un algoritmo para generar N elementos de la sucesión de Fibonacci (0, 1, 1, 2, 3, 5, 8, 13, …).
Despues de la serie imprima la suma de los términos de la serie.
#include <iostream>
using namespace std;
int a=0, b=1, c=0, s=0, N;

main(){

cout<< "ingrese el numero de terminos: ";


cin>> N;
for( int i=1; i<=N; i++ ){
s+=a;
if(i!=N)
cout<< a << ",\t";
else
cout<< a << ".\n";
c = a + b;
a = b;
b = c;

cout<< "La suma de terminos es: " << s <<endl;

system("pause");
system("cls");
}

Jorge Martel - Página 8 de 2


L05 -Estructuras cíclicas (for/while/do-while)

18. Una empresa tiene el registro de las horas que trabaja diariamente un empleado durante la semana (seis
días) y requiere determinar el total de éstas, así como el sueldo que recibirá por las horas trabajadas.
#include <iostream>
using namespace std;
int H=0, SH=200, S=0;

main(){

for( int i=1; i<=6; i++ ){


cout<< "Ingrese las horas trabajadas del dia " << i << ": ";
cin>> H;
S+=H;
}

SH*=S;

cout<< "El total de horas trabajadas es: " << S <<endl;


cout<< "El sueldo por horas trabajadas es: " << SH <<endl;

system("pause");
system("cls");

}
19. Un empleado de la tienda “Tiki Taka” realiza N ventas durante el día, se requiere saber cuántas de ellas
fueron mayores a $1000, cuántas fueron mayores a $500 pero menores o iguales a $1000, y cuántas
fueron menores o iguales a $500. Además, se requiere saber el monto de lo vendido en cada categoría y
de forma global
#include <iostream>
using namespace std;
int N=0, a=0, b=0, c=0, V=0, SV=0, sa=0,sb=0,sc=0;

main(){

cout<< "Ingrese el numero de ventas hechas en el dia: ";


cin>> N;

for( int i=1; i<=N; i++ ){

cout<< "Ingrese el costo de la " << i << "° venta: ";


cin>> V;

if( V > 1000 ){


a++;
sa+=V;
}else if( V <= 1000 && V > 500 ){
b++;
sb+=V;
}else if( V <= 500 ){
c++;
sc+=V;
}else{
cout<< "la cantidad no es haceptada.";
i--;
system("cls");
}

SV+=V;

Jorge Martel - Página 9 de 2


L05 -Estructuras cíclicas (for/while/do-while)

}
cout<< endl;
cout<< "Se vendieron: "<< a << " mayores de 1000 con un monto de: " << sa <<endl;
cout<< "Se vendieron: "<< b << " mayores de 500 con un monto de: " << sb <<endl;
cout<< "Se vendieron: "<< c << " menores o iguales de 500 con un monto de: " << sc <<endl;

cout<<endl;
cout<< "El monto total vendido es: " << SV <<endl;

system("pause");
system("cls");

}
20. Una persona adquirió un producto para pagar en 20 meses. El primer mes pagó $10, el segundo $20, el
tercero $40 y así sucesivamente. Realice un algoritmo para determinar cuánto debe pagar mensualmente;
y, el total de lo que pagó después de los 20 meses
#include <iostream>
using namespace std;
int s=0, a=10;

main(){

for( int i=1; i<=20; i++ ){


cout<< "El " << i << " mes debe pagar: " << a <<endl;
a*=2;
s+=a;
}

cout<< "El total a pagar es: " << s <<endl;

system("pause");
system("cls");

}
21. Una empresa les paga a sus empleados con base en las horas trabajadas en la semana. Realice un
algoritmo para determinar el sueldo semanal de N trabajadores y, además, calcule cuánto pagó la
empresa por los N empleados.
#include <iostream>
using namespace std;
int N, h, s=0;

main(){

cout<< "\n\tIngrese el numero de trabajadores: ";


cin>> N;

for ( int i=1; i<=N; i++){


cout<< "\n\tIngrese el numero de horas semanales: ";
cin>> h;
cout<< "\tSu sueldo es: " << h*100 <<endl<<endl;
s+=h;
}
cout<< "\tEl total ha pagar es: " << s*100 <<endl<<endl;

system("pause");
system("cls");
Jorge Martel - Página 10 de 2
L05 -Estructuras cíclicas (for/while/do-while)

}
22. Una empresa les paga a sus empleados con base en las horas trabajadas en la semana. Para esto, se
registran los días que laboró y las horas de cada día. Realice un algoritmo para determinar el sueldo
semanal de N trabajadores y además calcule cuánto pagó la empresa por los N empleados
#include <iostream>
using namespace std;
int N, h, d, s=0;

main(){

cout<< "\n\tIngrese el numero de trabajadores: ";


cin>> N;

for ( int i=1; i<=N; i++){


cout<< "\n\tIngrese el numero de dias : ";
cin>> d;
cout<< "\n\tIngrese el numero de horas diarias: ";
cin>> h;
cout<< "\tSu sueldo es: " << d*h*100 <<endl<<endl;
s+=(d*h);
}

cout<< "\tEl total ha pagar es: " << s*100 <<endl<<endl;

system("pause");
system("cls");

}
23. La cadena de tiendas de autoservicio “El mandilón” cuenta con sucursales en C ciudades diferentes de la
República, en cada ciudad cuenta con T tiendas y cada tienda cuenta con N empleados; asimismo, cada
una registra lo que vende de manera individual cada empleado, cuánto fue lo que vendió cada tienda,
cuánto se vendió en cada ciudad y cuánto recaudó la cadena en un solo día.
#include <iostream>
using namespace std;
int C, T, N, V, SV=0, SVC=0, SVT=0;

main(){

cout<< "Ingrese el numero de ciudades: ";


cin>> C;

for( int i=1; i<=C; i++ ){

cout<< "Ingrese el numero de Tiendas en la "<< i << " ciudad: ";


cin>> T;

for( int i=1; i<=T; i++ ){

cout<< "Ingrese el numero de Empleados en la "<< i << " tienda: ";


cin>> N;

for( int i=1; i<=N; i++ ){

Jorge Martel - Página 11 de 2


L05 -Estructuras cíclicas (for/while/do-while)

cout<< "Registre la venta: ";


cin>> V;
SV+=V;
}
cout<< "El total recaudado en esta tienda es: " << SV <<endl;
SVT+=SV;
SV=0;
}
cout<< "El total recaudado en esta ciudad es: " << SVT <<endl;
SVT+=SV;
SVC+=SVT;
SVT=0;
}

cout<< "El total recaudado es: " << SVC <<endl;

system("pause");
system("cls");

}
24. Un profesor tiene un salario inicial de $1500, y recibe un incremento de 10 % anual durante 6 años.
¿Cuál es su salario al cabo de 6 años? ¿Qué salario ha recibido en cada uno de los 6 años?
#include <iostream>
using namespace std;
int s=0, a=1500;

main(){

for( int i=1; i<=6; i++ ){


cout<< "EL salario en el " << i << " año es: " << a <<endl;
s+=a;
a*=(1.10f);
}

cout<< "\nEl salario al cabo de los 6 años es: " << s <<endl;

system("pause");
system("cls");

}
25. “El náufrago satisfecho” ofrece hamburguesas sencillas (S), dobles (D) y triples (T), las cuales tienen
un costo de $20, $25 y $28 respectivamente. La empresa acepta tarjetas de crédito con un cargo de 5
% sobre la compra. Suponiendo que los clientes adquieren N hamburguesas, las cuales pueden ser de
diferente tipo, realice un algoritmo para determinar cuánto debe pagar.
#include <iostream>
using namespace std;
int S=20, D=25, T=28, sS=0, sD=0, sT=0, N;
string MPago;
char Tipo;
bool Mpago;

main(){

cout<< "Desea pagar con targeta o efectivo: ";


cin>> MPago;

Jorge Martel - Página 12 de 2


L05 -Estructuras cíclicas (for/while/do-while)

if( MPago == "efectivo" || MPago == "Efectivo" || MPago == "EFECTIVO" ){


Mpago=false;
}else if ( MPago == "TARGETA" || MPago == "targeta" || MPago == "Targeta" ){
Mpago=true;
}else{
cout<< "El metodo de pago no es aceptado.\n";
}

cout<< "Ingrese el numero de amburguesas que desea comprar: ";


cin>> N;

if(Mpago==false){

for( int i=1; i<=N; i++ ){

cout<< "Elija el tipo de amburguesa:\n"


<< "1. Sencillas.\n"
<< "2. Dobles.\n"
<< "3. Triples.\n";
cin>> Tipo;

switch (Tipo){
case '1':
sS+=S;
break;
case '2':
sD+=D;
break;
case '3':
sT+=T;
break;
}

cout<< "El pago es: " << sS+sD+sT <<endl;

}else if(Mpago==true){

for( int i=1; i<=N; i++ ){

cout<< "Elija el tipo de amburguesa:\n"


<< "1. Sencillas.\n"
<< "2. Dobles.\n"
<< "3. Triples.\n";
cin>> Tipo;

switch (Tipo){
case '1':
sS+=S;
break;
case '2':
sD+=D;
break;
case '3':
sT+=T;
break;
}

}
cout<< "El pago es: " << (sS+sD+sT)*1.05f <<endl;
Jorge Martel - Página 13 de 2
L05 -Estructuras cíclicas (for/while/do-while)

system("pause");
system("cls");

}
26. Una compañía fabrica focos de colores (verdes, blancos y rojos). Se desea contabilizar, de un lote de N
focos, el número de focos de cada color que hay en existencia.
#include <iostream>
using namespace std;
int N, v=0, r=0, b=0;
string CF;

main(){

cout<<"Ingrese el numero de focos: ";


cin>> N;

system("cls");

for( int i=1; i<=N; i++ ){


cout<< "Ingrese el color del " << i << " foco: ";
cin>> CF;
cout<<endl;
if( CF == "verde" ){
v++;
}else if( CF == "blanco" ){
b++;
}else if( CF == "rojo" ){
r++;
}else{
cout<< "El color es invalido.\n";
i--;
}

cout<< "Existen " << v << " focos verdes.\n";


cout<< "Existen " << b << " focos blancos.\n";
cout<< "Existen " << r << " focos rojos.\n";

system("pause");
system("cls");

}
27. Se requiere un algoritmo para determinar cuánto ahorrará en pesos una persona diariamente, y en un año,
si ahorra 3¢ el primero de enero, 9¢ el dos de enero, 27¢ el 3 de enero y así sucesivamente todo el año.
#include <iostream>
using namespace std;
long int a=1;

main(){

for( int i=1; i<=365; i++ ){

Jorge Martel - Página 14 de 2


L05 -Estructuras cíclicas (for/while/do-while)

cout<< "El " << i << " ahorra: " << a <<endl;
a*=3;
}

system("pause");
system("cls");

}
28. Realice el algoritmo para determinar cuánto pagará una persona que adquiere N artículos, los cuales
están de promoción. Considere que si su precio es mayor o igual a $200 se le aplica un descuento de
15%, y si su precio es mayor a $100 pero menor a $200, el descuento es de 12%; de lo contrario, sólo se
le aplica 10%. Se debe saber cuál es el costo y el descuento que tendrá cada uno de los artículos y
finalmente cuánto se pagará por todos los artículos obtenidos.
#include <iostream>
using namespace std;
int N, Presio;
float s=0;

main(){

cout<< "Ingrese el numero de articulos: ";


cin>> N;

for( int i=1; i<=N; i++ ){

cout<< "Ingrese el precio del articulo: ";


cin>> Presio;

if(Presio>=200){
cout<< "Por este articulo pagara" << Presio*0.85f <<endl;
s+=(Presio*0.85f);
}else if(Presio>100 && Presio<200){
cout<< "Por este articulo pagara" << Presio*0.87f <<endl;
s+=(Presio*0.87f);
}else{
cout<< "Por este articulo pagara" << Presio*0.90f <<endl;
s+=(Presio*0.90f);
}

cout<< "El costo final es: " << s <<endl;

system("pause");
system("cls");

}
29. Un cliente de un banco deposita equis cantidad de soles cada mes en una cuenta de ahorros. La
cuenta percibe un interés fijo simple durante un año de 10 % anual. Realice un algoritmo para
determinar el total de la inversión final de cada año en los próximos N años.
#include <iostream>
using namespace std;
int N, M, S=0;

Jorge Martel - Página 15 de 2


L05 -Estructuras cíclicas (for/while/do-while)

main(){

cout<< "Ingrese el numero de años: ";


cin>> N;

for (int i=1; i<=N; i++){

for (int i=1; i<=12; i++){


cout<< "Ingrese el monto que depositara este mes: ";
cin>> M;
S+=M;
}
cout<< "La invercion de este año es: " << S*1.1f <<endl;
}

system("pause");
system("cls");

}
30. Los directivos de la escuela “los sabios” requieren determinar cuál es la edad promedio de cada uno
de los M salones y cuál es la edad promedio de toda la escuela. Realice un algoritmo para determinar
estos promedios y represente la solución.
#include <iostream>
using namespace std;
int M, N, E;
int S=0;
float F=0, T=0;

main(){

cout<< "Ingrese el numero de salones: ";


cin>> M;

for ( int i=1; i<=M; i++ ){

cout<< "Ingrese el numero de alumnos del " << i << " salon: ";
cin>> N;

for( int i=1; i<=N; i++ ){


cout<< "Ingrese la edad del " << i << " alumno: ";
cin>> E;
S+=E;
}
F = (float) S / N;
cout<< "La edad Promedio del salon es: " << F <<endl;
T+=F;
S=0;
}

cout<< "La edad Promedio de la escuela es: " << (float) T/M <<endl;

system("pause");
system("cls");
}

Jorge Martel - Página 16 de 2

También podría gustarte