En esta serie de publicaciones, vamos a aborar varios ejercicios prácticos en donde pondremos en práctica el uso de las estructuras repetitivas “Repetir – Hasta que“.
Si estás interesado en la teoría detrás de estas estructuras, puedes revisar la publicación anterior donde se explica su funcionamiento en detalle:
Repetir – Hasta que: Estructura de control repetitiva
Contenido
ToggleEjercicio 1
Diseña un algoritmo que permita leer dos números enteros positivos y luego determine el máximo común divisor de dichos números.
Peudocódigo
Proceso EjercicioRepetir1
Definir numero1, numero2, residuo, mcd Como Entero
Repetir
Escribir "Ingrese numero1: "
Leer numero1
Hasta Que numero1 > 0
Repetir
Escribir "Ingrese numero2: "
Leer numero2
Hasta Que numero2 > 0
Repetir
residuo <- numero1 % numero2
numero1 <- numero2
numero2 <- residuo
Hasta Que residuo = 0
mcd = numero1
Escribir "El mcd es: ", mcd
FinProceso
Diagrama de flujo
Ejercicio 2
Diseña un algoritmo que permita leer dos números enteros positivos y luego determine el mínimo común múltiplo de dichos números.
Peudocódigo
Proceso EjercicioRepetir2
Definir numero1, numero2, producto, residuo, mcd, mcm Como Entero
Repetir
Escribir "Ingrese numero1: "
Leer numero1
Hasta Que numero1 > 0
Repetir
Escribir "Ingrese numero2: "
Leer numero2
Hasta Que numero2 > 0
producto <- numero1 * numero2
Repetir
residuo <- numero1 % numero2
numero1 <- numero2
numero2 <- residuo
Hasta Que residuo = 0
mcd <- numero1
mcm <- trunc(producto / mcd)
Escribir "El mcm es: ", mcm
FinProceso
Diagrama de flujo
Ejercicio 3
Realice un algoritmo que permita leer un número positivo. Luego indique si es un número perfecto.
Nota: Un número es perfecto si la suma de sus divisores (sin incluir al mismo número) resulta igual a sí mismo. Ejemplo: 6 es perfecto debido a que 6 = 1 + 2 + 3
Peudocódigo
Proceso EjercicioRepetir3
Definir numero, sumaDivisores como Entero
Repetir
Escribir "Ingrese un número: "
Leer numero
Hasta Que numero > 0
sumaDivisores <- 0
Para i <- 1 Hasta numero - 1 Con Paso 1 Hacer
Si numero % i = 0 Entonces
sumaDivisores <- sumaDivisores + i
FinSi
Fin Para
Si sumaDivisores = numero Entonces
Escribir "El número ", numero, " es perfecto"
SiNo
Escribir "El número ", numero, " NO es perfecto"
FinSi
FinProceso
Diagrama de flujo
Ejercicio 4
Realice el diseño de un algoritmo que entregue el término enésimo de la serie de Fibonacci (Tomar el número n a partir de cero)
Peudocódigo
Proceso EjercicioRepetir4
Definir F, F0, F1, n como Entero
F0 <- 1
F1 <- 1
Repetir
Escribir "Ingrese n: "
Leer n
Hasta Que n >= 0
Si n = 0 o n = 1 Entonces
F <- 1
SiNo
Para i <- 2 Hasta n Con Paso 1 Hacer
F <- F1 + F0
F0 <- F1
F1 <- F
Fin Para
FinSi
Escribir "El término enésimo es: ", F
FinProceso
Diagrama de flujo
Comparando la estructura Repetir con otras estructuras repetitivas
Conocer las diferencias existentes entre los distintos tipos de bucles ayuda a entender cuándo es más apropiado usar cada uno en diferentes situaciones.
Característica | Repetir Hasta Que | Mientras | Para (For) |
---|---|---|---|
Evaluación de la Condición | Al final del bucle | Al principio del bucle | Al principio de cada iteración |
Número de Ejecuciones | Al menos una vez | Cero o más veces | Número predefinido de veces |
Uso Común | Cuando se desconoce el número exacto de iteraciones pero se requiere que el bloque se ejecute al menos una vez | Cuando el número de iteraciones depende de una condición y puede ser cero | Cuando se conoce el número exacto de iteraciones |
Control de Flujo | Se basa en una condición que se verifica después de ejecutar el bloque de código | Se basa en una condición que se verifica antes de ejecutar el bloque de código | Controlado por una variable contador e incremento/decremento definido |
Caso de Ejemplo | Validar una entrada de usuario (donde al menos se pide la entrada una vez) | Ejecutar un bucle mientras una condición sea verdadera (puede no ejecutarse si la condición es inicialmente falsa) | Ejecutar un bucle un número específico de veces (como iterar sobre los elementos de un arreglo) |
Sigue la parte 2 con más ejercicios aquí:
Ejercicios con estructura repetitiva Repetir_Hasta en Pseint – parte 2
Sigue la parte 3 con más ejercicios aquí:
Ejercicios con estructura repetitiva Repetir_Hasta en Pseint – parte 3
4 comments on “Ejercicios con estructura repetitiva Repetir_Hasta en Pseint – parte 1”
Escribir un algoritmo que lea un vector con n posiciones, y diga cuantos
números repetidos existen, dado el caso.
///Se debe realizar un programa que:
///1º) Pida por teclado un número (entero positivo).
///2º) Pregunte al usuario si desea introducir o no otro número.
///3º) Repita los pasos 1º y 2º mientras que el usuario no responda n/N (no).
///4º) Muestre por pantalla la suma de los números introducidos por el usuario.