Bucle while
El bucle while
en Python se utiliza para repetir un bloque de código mientras una condición específica sea verdadera. Mientras la condición sea verdadera, el código dentro del bucle se ejecutará una y otra vez. Aquí tienes una descripción general y ejemplos de cómo funciona el bucle while
:
Sintaxis del bucle while
en Python:
while condicion:
# Código a ejecutar mientras la condición sea verdadera
La condición se evalúa antes de cada iteración del bucle. Si la condición es verdadera, el código dentro del bucle se ejecuta. Si la condición es falsa desde el principio, el código dentro del bucle nunca se ejecutará.
Ejemplo de bucle while
:
contador = 1
while contador <= 5:
print("Iteración número", contador)
contador += 1
Este ejemplo muestra un bucle while
que cuenta desde 1 hasta 5. La condición contador <= 5
se verifica antes de cada iteración, y el código dentro del bucle se ejecuta mientras la condición sea verdadera.
Ejemplo 1: Bucle while
que suma números
Te muestro un programa que solicita al usuario que ingrese números enteros positivos uno tras otro. El programa debe continuar solicitando números hasta que el usuario ingrese un número negativo. Luego, debe calcular y mostrar la suma de los números ingresados.
suma = 0
numero = int(input("Ingresa un número positivo (ingresa un número negativo para salir): "))
while numero >= 0:
suma += numero
numero = int(input("Ingresa otro número positivo (o un número negativo para salir): "))
print("La suma de los números ingresados es:", suma)
Este programa utiliza un bucle while
para solicitar números al usuario repetidamente hasta que se ingresa un número negativo, momento en el que el bucle se detiene y se calcula la suma de los números ingresados.
Ejemplo 2: Adivina el número
Un programa que genera un número aleatorio entre 1 y 100. Luego, solicita al usuario que adivine el número. Si el usuario adivina correctamente, muestra un mensaje de felicitación y termina el programa. Si el usuario no adivina correctamente, proporciona pistas (mayor o menor) y permite al usuario intentarlo nuevamente hasta que adivine correctamente.
import random
numero_secreto = random.randint(1, 100)
intentos = 0
intento=0
while intento != numero_secreto:
intentos += 1
intento = int(input("Intenta adivinar el número (entre 1 y 100): "))
if intento == numero_secreto:
print(f"Felicitaciones, ¡adivinaste el número {numero_secreto} en {intentos} intentos!")
elif intento < numero_secreto:
print("El número es mayor. Intenta de nuevo.")
else:
print("El número es menor. Intenta de nuevo.")
Este programa utiliza un bucle while
que continúa hasta que el usuario adivina el número secreto. Proporciona pistas al usuario sobre si el número es mayor o menor y registra el número de intentos. El bucle se rompe cuando el usuario adivina correctamente.
Ejercicios
Escribe un programa que vaya pidiendo notas al usuario hasta que introduzca un cero. Si la nota no está entre 1 y 10 que imprima un mensaje de error. Si está entre 1 y 10 que la vaya sumando en un acumulador y que cuando el usuario ponga 0 nos muestre el total de números introducidos, la suma y la media