Semana 3 · Día 4: Tabla de multiplicar del 1 al 10 en Python

Semana 3 · Día 4: Tabla de multiplicar del 1 al 10 en Python

Crea en 60 minutos un programa que pide un número, imprime su tabla del 1 al 10 y corrige un error de rango que omite la décima fila.

Entrega de hoy

Al terminar los 60 minutos tendrás una carpeta dia-04-tabla/ con cuatro evidencias:
  • tabla.py, un programa que pide un número y muestra su tabla del 1 al 10;
  • prediccion.md, con tres resultados calculados antes de ejecutar;
  • salida.txt, con dos ejecuciones completas;
  • error_rango.py, una copia donde provocarás y corregirás una fila ausente.
La etiqueta exacta de la malla es Semana 3 · Día 4: Crear una tabla de multiplicar. Hoy convertirás el for de ayer en diez operaciones ordenadas. No avances todavía al juego de adivinanza, funciones, excepciones ni bucles anidados.

Sesión de 60 minutos

00:00-10:00 · 10 minutos de repaso y predicción

Crea dia-04-tabla/prediccion.md y responde sin abrir el intérprete:
  1. Si eliges la tabla del 7, ¿qué resultados esperas para 7 x 1, 7 x 5 y 7 x 10?
  2. ¿Cuántas filas debe imprimir una tabla que va del 1 al 10?
  3. En for multiplicador in range(1, 11), ¿qué valor cambia en cada vuelta?
  4. ¿Qué fila faltaría si el código usara range(1, 10)?
Escribe también esta predicción de salida:
Primera fila: 7 x 1 = 7
Fila intermedia: 7 x 5 = 35
Última fila: 7 x 10 = 70
Total de filas: 10
No compruebes las respuestas todavía. La predicción servirá para detectar un error que Python ejecuta sin mostrar ningún mensaje.

10:00-30:00 · 20 minutos con el recurso de la malla

Abre Learn Python - Full Course for Beginners [Tutorial], el curso de freeCodeCamp nombrado en la malla. Ve al tramo 2:32:44-2:41:20, titulado For Loops, y detente antes de Exponent Function. La ficha oficial del curso incluye ese tramo y permite cambiar el audio a una pista doblada al español desde el engranaje del reproductor. 1
Loading content card…
Mientras lo ves, anota dos cosas en prediccion.md: cuál es la variable que recibe un valor distinto en cada vuelta y qué línea queda dentro del for por su indentación.
Usa los minutos restantes para leer la sección range() de la documentación de Python. range(1, 11) empieza en 1 y se detiene antes de 11; por eso produce los diez multiplicadores del 1 al 10. El extremo final nunca forma parte de la secuencia. 2
Antes de pasar a la práctica, copia esta frase y completa los huecos:
En range(1, 11), el primer valor es ___, el último es ___ y 11 no aparece porque ___.

30:00-55:00 · 25 minutos de tabla y error de rango

Crea dia-04-tabla/tabla.py:
numero = int(input("Tabla del: "))

for multiplicador in range(1, 11):
    producto = numero * multiplicador
    print(f"{numero} x {multiplicador} = {producto}")
Sigue una vuelta antes de ejecutar: si numero vale 7 y multiplicador vale 5, entonces producto vale 35. En la siguiente vuelta solo cambia multiplicador; numero conserva el valor introducido.
Ejecuta tabla.py, escribe 7 y compara la salida con tu predicción. Debe quedar así:
Tabla del: 7
7 x 1 = 7
7 x 2 = 14
7 x 3 = 21
7 x 4 = 28
7 x 5 = 35
7 x 6 = 42
7 x 7 = 49
7 x 8 = 56
7 x 9 = 63
7 x 10 = 70
Copia esa ejecución completa en salida.txt bajo el rótulo PRUEBA 1: TABLA DEL 7. Cuenta las filas de resultados: deben ser diez.
Ahora duplica el programa como error_rango.py. Cambia solo esta línea:
for multiplicador in range(1, 11):
por esta:
for multiplicador in range(1, 10):
Antes de ejecutar, escribe en prediccion.md qué línea desaparecerá. Ejecuta la copia con 7: el programa no mostrará un error, pero terminará en 7 x 9 = 63. El 10 no entra en el rango porque el segundo argumento es un límite excluido.
Restaura range(1, 11) en error_rango.py y comprueba que reaparece 7 x 10 = 70. Después ejecuta tabla.py con un número distinto y guarda el resultado bajo PRUEBA 2 en salida.txt. Verifica al menos la primera y la última fila con una multiplicación hecha a mano.

55:00-60:00 · 5 minutos de cierre de notas

Añade estas cuatro líneas al final de prediccion.md:
  1. Mi tabla tuvo: cuántas filas y desde qué multiplicador hasta cuál.
  2. En cada vuelta cambió: la variable que recibió los valores del rango.
  3. El error de rango fue: la fila que faltó y la causa exacta.
  4. Para generar otra tabla cambiaría: el dato introducido, el inicio o el límite del rango, según el resultado que busques.
Cierra con una ejecución limpia de tabla.py. Tu evidencia no es haber copiado diez multiplicaciones: es poder explicar por qué range(1, 11) imprime exactamente diez filas y por qué range(1, 10) omite la última.

Hecho cuando...

  • Existe dia-04-tabla/ con los cuatro archivos pedidos.
  • Calculaste 7 x 1, 7 x 5 y 7 x 10 antes de ejecutar.
  • Completaste la frase sobre range(1, 11).
  • tabla.py pide un número con input() y lo convierte con int().
  • La prueba con 7 imprime diez filas, desde 7 x 1 = 7 hasta 7 x 10 = 70.
  • Guardaste la primera ejecución completa en salida.txt.
  • Provocaste el error con range(1, 10) y anotaste qué fila desapareció.
  • Explicaste por qué Python no mostró un mensaje de error.
  • Restauraste range(1, 11) y recuperaste la décima fila.
  • Ejecutaste una segunda tabla y comprobaste a mano su primera y última fila.
  • Dejaste las cuatro notas de cierre.
  • No adelantaste el juego de adivinanza, funciones, excepciones ni bucles anidados.

This story was produced automatically by a channel. One sentence is all it takes for Neodrop to keep producing for you.

Related content