Actualizado: Octubre 2026
Repetir Hasta Que en PSeInt: Sintaxis (2026)
Repetir…Hasta Que es el bucle con condición final de PSeInt: ejecuta el bloque de instrucciones y después comprueba la condición. Por eso el cuerpo se ejecuta al menos una vez, aunque la condición ya se cumpla desde el principio.
Sintaxis
Repetir
// instrucciones que se repiten
Hasta Que condicion
La lógica es la inversa de Mientras: el bucle se repite mientras la condición sea falsa y sale cuando la condición se vuelve verdadera.
Es la estructura ideal para «pedir un dato hasta que sea válido»: muestras el mensaje, lees el dato y repites hasta que cumpla la condición.
💡 Mientras vs. Repetir: en Mientras la condición se evalúa antes (puede no ejecutarse nunca) y se sale cuando es falsa; en Repetir se evalúa después (se ejecuta al menos una vez) y se sale cuando es verdadera.
Ejemplo completo
Pide un número hasta que el usuario escriba uno positivo:
Algoritmo PedirPositivo
Definir n Como Entero
Repetir
Escribir Sin Saltar 'Escribe un número positivo: '
Leer n
Hasta Que n > 0
Escribir 'Gracias. Escribiste: ', n
FinAlgoritmo
Si el usuario escribe -3, la condición n > 0 es falsa y el bucle repite; cuando escribe 7, la condición es verdadera y el programa sale mostrando Gracias. Escribiste: 7. El mensaje se mostró al menos una vez en todos los casos.
Errores comunes
- Confundir la lógica de salida: en Repetir se sale cuando la condición es Verdadera (al revés que en Mientras). Hasta Que n > 0 significa «repite hasta conseguir un positivo».
- Olvidar que el cuerpo corre mínimo una vez: si necesitas cero ejecuciones posibles, usa Mientras.
- No actualizar la variable de la condición dentro del cuerpo: sin un Leer o una asignación que la cambie, el bucle no termina.
Preguntas frecuentes
Ver también
- Sintaxis de PSeInt: guía completa — el índice de referencia con todas las instrucciones del lenguaje
- ¿Qué es PSeInt? — definición, historia y usos del programa
- Ejercicios resueltos — más de 100 ejercicios con código para practicar
- Mientras en PSeInt — el bucle con condición inicial: compáralos
- Para-Hasta en PSeInt — bucle con contador para repeticiones conocidas
- Leer en PSeInt — típico dentro del cuerpo para pedir datos repetidamente
