Entrenando la programación (loops)
1 - Imprime todos los enteros entre dos números dados.
a = int(input("Ingrese el primer entero: "))
b = int(input("Ingrese el segundo entero: "))
if a <= b:
for n in range(a, b + 1):
print(n, end=" ")
else:
for n in range(a, b - 1, -1):
print(n, end=" ")
print()
2 - Días para que colonia A (4 elementos, +3%/día) iguale o supere colonia B (10 elementos, +1.5%/día).
A, B = 4.0, 10.0
dias = 0
while A < B:
A *= 1.03
B *= 1.015
dias += 1
print(f"Toma {dias} días para que A ≥ B (A={A:.2f}, B={B:.2f}).")
3 - Lee 15 calificaciones [0–5], repitiendo hasta que cada una sea válida.
validas = []
for i in range(1, 16):
while True:
nota = float(input(f"Nota #{i} (0–5): "))
if 0 <= nota <= 5:
validas.append(nota)
break
print(">>> Valor inválido. Intenta de nuevo.")
print("Calificaciones válidas:", validas)
4 - Promedio de temperaturas hasta que ingrese -273.
suma = 0.0
cuenta = 0
while True:
t = float(input("Temperatura (°C) ['-273' para terminar]: "))
if t == -273:
break
suma += t
cuenta += 1
if cuenta:
print(f"Promedio: {suma / cuenta:.2f} °C")
else:
print("No se ingresaron temperaturas.")
5 - Factorial de un entero.
n = int(input("Número entero para factorial: "))
if n < 0:
print("No está definido para negativos.")
return
fact = 1
for i in range(2, n + 1):
fact *= i
print(f"{n}! = {fact}")
Momento de los proyectos (loops)
6 - Tabla de multiplicar del 1 al 10 de un número elegido.
x = int(input("Número para la tabla: "))
print(f"Tabla de multiplicar del {x}:")
for i in range(1, 11):
print(f"{x} x {i} = {x * i}")
7 - Verifica si un entero es primo.
n = int(input("Ingrese un entero: "))
if n < 2:
print(f"{n} no es primo.")
return
for i in range(2, int(n**0.5) + 1):
if n % i == 0:
print(f"{n} no es primo (divisible por {i}).")
return
print(f"{n} es primo.")
8 - Distribución de edades en intervalos hasta que se ingrese negativo.
contadores = {'0-25':0, '26-50':0, '51-75':0, '76-100':0}
while True:
edad = int(input("Edad (negativo para terminar): "))
if edad < 0:
break
if edad <= 25:
contadores['0-25'] += 1
elif edad <= 50:
contadores['26-50'] += 1
elif edad <= 75:
contadores['51-75'] += 1
elif edad <= 100:
contadores['76-100'] += 1
else:
print("Edad fuera de rango [0–100], se descarta.")
print("Distribución de edades:")
for k, v in contadores.items():
print(f" {k}: {v}")
9 - Elección con 20 votos: 1–4 candidatos, 5 nulos, 6 en blanco.
votos = {i:0 for i in range(1,7)}
for i in range(1, 21):
while True:
v = int(input(f"Voto #{i} (1–4 candidatos, 5 nulo, 6 blanco): "))
if 1 <= v <= 6:
votos[v] += 1
break
print(">>> Voto inválido.")
total = sum(votos.values())
print("Resultados:")
for k in range(1,5):
print(f" Candidato {k}: {votos[k]} votos")
print(f" Nulos: {votos[5]} ({votos[5]/total*100:.2f}%)")
print(f" Blanco: {votos[6]} ({votos[6]/total*100:.2f}%)")