Adivina el número
Adivina un número secreto del 1 al 100 en siete intentos.
- Nivel
- Intermedio
- Tema:
- Repeticiones
- Conceptos:
- Entrada y salida
- Mientras
- Si
- Azar
- Lógicos
Ejecuta, modifica y depura este ejemplo en el navegador.
Lo que aprenderás
Aleatorio elige el número secreto y Mientras repite mientras se cumplan dos condiciones unidas con Y y NO. Abs mide qué tan cerca estás y Escribir Sin Saltar deja el cursor en la misma línea.
Código
Algoritmo AdivinaNumero Definir secreto, intento, intentos Como Entero Definir acerto Como Logico secreto <- Aleatorio(1, 100) intentos <- 0 acerto <- Falso Escribir "Pensé un número del 1 al 100. Tienes 7 intentos." Mientras (NO acerto) Y intentos < 7 Hacer intentos <- intentos + 1 Escribir "Intento ", intentos, ":" Leer intento Si intento = secreto Entonces acerto <- Verdadero SiNo Si intento < secreto Entonces Escribir Sin Saltar "Más alto" SiNo Escribir Sin Saltar "Más bajo" FinSi // Abs da la distancia sin importar el signo Si Abs(intento - secreto) <= 5 Entonces Escribir ", ¡estás muy cerca!" SiNo Escribir "..." FinSi FinSi FinMientras Si acerto Entonces Escribir "¡Correcto! Lo lograste en ", intentos, " intentos." SiNo Escribir "Se acabaron los intentos. Era el ", secreto, "." FinSiFinAlgoritmoDiagrama de flujo
Cada bloque del diagrama corresponde a una instrucción del código.
Ejemplo de ejecución
Esto muestra el programa al ejecutarlo. Las respuestas escritas por el usuario aparecen resaltadas.
Pensé un número del 1 al 100. Tienes 7 intentos.Intento 1:Respuesta del usuario: 50Más bajo...Intento 2:Respuesta del usuario: 25¡Correcto! Lo lograste en 2 intentos.
Desafío
Al final, muestra un mensaje distinto si ganaste en tres intentos o menos.
Ver pista
Dentro del Si acerto, agrega otro Si que compare intentos <= 3.
Ejemplos relacionados
Ordenamiento burbuja
Ordena números al azar intercambiando vecinos, y se detiene apenas quedan ordenados.
IntermedioOrdenamiento por inserción
Inserta cada número entre los ya ordenados, como al acomodar cartas en la mano.
IntermedioOrdenamiento Shell
Una inserción entre elementos lejanos, con un salto que se achica en cada pasada.
Avanzado