Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Una estructura repetitiva, estructura iterativa, ciclo repetitivo o bucle en programación, se refiere
a un tipo de estructura de control la cual permite la repetición de la ejecución de una o varias
sentencias internas, de tal modo que no sea necesario escribir varias veces una misma instrucción
o un mismo procedimiento que se ejecutara en múltiples ocasiones, a diferencia de las estructuras
de control condicionales o de selección, donde el flujo de ejecución del programa simplemente se
bifurca o desvía en un sentido u otro según el resultado que se obtenga de la evaluación de una
interrogante o condición, pero en ese caso las sentencias internas solo se ejecutan una vez.
Si queremos hacer que una sección de nuestro programa se repita mientras se cumpla una
cierta condición, usaremos la orden “while”. Esta orden tiene dos formatos distintos, según
comprobemos la condición al principio o al final.
while (condición)
sentencia;
Este es el otro formato que puede tener la orden “while”: la condición se comprueba al
final. El punto en que comienza a repetirse se indica con la orden “do”, así:
do
sentencia;
while (condición);
Al igual que en el caso anterior, si queremos que se repitan varias órdenes (es lo habitual),
deberemos encerrarlas entre llaves. Nuevamente, puede ser recomendable incluir siempre
las llaves, como costumbre.
Ésta es la orden que usaremos habitualmente para crear partes del programa que se repitan
un cierto número de veces. El formato de “for” es
Que es un “Contador”
import java.util.Scanner;
2. Crear un programa calcule cuantas cifras tiene un número entero positivo (pista: se
puede hacer dividiendo varias veces entre 10).
import java.util.Scanner;
import java.util.Scanner;
Realizar un programa que permita cargar dos listas de 15 valores cada una. Informar con un
mensaje cual de las dos listas tiene un valor acumulado mayor (mensajes "Lista 1 mayor",
"Lista 2 mayor", "Listas iguales")
Tener en cuenta que puede haber dos o más estructuras repetitivas en un algoritmo. import
java.util.Scanner;
7.
8. Crea un programa que pida al usuario su código de usuario (un número entero) y su
contraseña numérica (otro número entero), y no le permita seguir hasta que
introduzca como código 1024 y como contraseña 4567.Utilizando Do- While
9. Crear un programa que pida un número al usuario (entre 1 y 100) y muestre tantas
letras A como indique ese número, usando "break" para terminar.
10. Desarrollar un programa que permita cargar n números enteros y luego nos informe
cuántos valores fueron pares y cuántos impares.
import java.util.Scanner;
Ejemplo.
Si N = 53634 (par) y d = 3
Salida
número de veces que aparece el dígito 3 : 2
M = 564
Si N = 15747 (impar)
Salida:
número invertido : 74751
Respuesta
#include <iostream>
#include <math.h>
using namespace std;
void main(){
int num = 0, n, m, d, cont = 0;
double N=0;
do{
cout << "Ingrese N : "; cin >> n;
} while (n<1000);
if (n % 2 == 0){
m = n;
cout << endl << "Ingrese digito : "; cin >> d;
while (m != 0){
if (m % 10 == d){
cont++;
}
else{
N = N + (m % 10)*pow(10, num++);
}
m = m / 10;
}
cout << "Numero que aparece el digito " << d << " : " << cont;
cout << endl << "M = " << N <<endl;
}
else{
m = n;
while (m != 0){
N = 10 * N + (m % 10);
m = m / 10;
}
cout << "Numero Invertido " << N <<endl;
}
system("pause");
}
12. Cada equipo de la liga sudamericana de fútbol tiene un cuadro de 30 jugadores, por
cada jugador se cuenta con los siguientes datos: código (entero de 3 cifras), peso y
edad.
Crear un programa que reciba los datos de los jugadores de "n" equipos(n>=10) y
nos muestre:
#include <iostream>
using namespace std;
void main(){
int n = 2, m = 2, i, j, contMax = 0, cod;
float sumaEdad = 0, sumaPeso, peso, edad,max = 0;
if (max<edad){
contMax = 1;
max = edad;
}
else if (max == edad){
contMax++;
}
sumaEdad += edad;
}
cout << "Edad Promedio de este equipo : " << (sumaPeso / m) << endl;
}
cout << "Edad Promedio Total : " << (sumaEdad / (m*n)) << endl;
cout << "Mayor Edad : " << max << " y numero de veces que se repite : " << contMax;
system("pause");
}
13. Diseñe un programa que permita validar los datos de usuario (entero de 3 dígitos) y
clave(3 caracteres) para su ingreso al sistema de procesamiento de notas (los datos
validos para el usuario es 100 y para la clave es UNI).
Si el usuario comete más de 3 errores durante la entrada de sus datos, el sistema
envía el mensaje "supero el número de oportunidades, Vuelva otro día" y luego
finaliza.
El sistema debe calcular y mostrar por cada alumno, la nota promedio que ha
obtenido en el ciclo 2020-1 y finalmente el número de aprobados según dicho
promedio.
#include <iostream>
#include <conio.h>
#include <stdio.h>
#include <string>
void main(){
int usuario, cont = 0, n, contAprobados = 0, contNota, i;
float sumaNotas, nota;
char clave[30];
do{
cont++;
cout << "Usuario : "; cin >> usuario;
cout << "Clave : "; cin>>clave;
cout << "contador en : " << cont << endl;
system("pause");
}
14. Realizar un programa que permita ingresar el peso (en kilogramos) de piezas. El
proceso termina cuando ingresamos el valor 0. Se debe informar:
a) Cuántas piezas tienen un peso entre 9.8 Kg. y 10.2 Kg.?, cuántas con más de 10.2
Kg.? y cuántas con menos de 9.8 Kg.?
b) La cantidad total de piezas procesadas.
Diagrama de flujo:
Programa:
import java.util.Scanner;
15. Realizar un programa que acumule (sume) valores ingresados por teclado hasta
ingresar el 9999 (no sumar dicho valor, indica que ha finalizado la carga). Imprimir
el valor acumulado e informar si dicho valor es cero, mayor a cero o menor a cero.
import java.util.Scanner;
import java.util.Scanner;
void main()
{
int h=0,m=0,s=0;
Ejercicios resueltos:
Respuesta: los números del 1 al 3 (se empieza en 1 y se repite mientras sea menor que 4).
Respuesta: escribe un 5, porque hay un punto y coma después del “for”, de modo que repite
cuatro veces una orden vacía, y cuando termina, “i” ya tiene el valor 5.
Respuesta: escribe “1” continuamente, porque no aumentamos el valor de “i”, luego nunca
se llegará a cumplir la condición de salida.
Respuesta: escribe los números del 0 al 4, porque la condición del “continue” nunca se
llega a dar.
Problema 4:
Diagrama de flujo:
Podemos observar que dentro de una estructura repetitiva puede haber estructuras
condicionales (inclusive puede haber otras estructuras repetitivas que veremos más
adelante)
Programa:
import java.util.Scanner;