Hoy vamos a ver cómo hacer una función en Python que imprima la tabla de multiplicar de un número. Recordemos que una tabla de multiplicar es aquella en donde se multiplica al número en cuestión por 1, luego por 2 y así hasta el 10.
Vamos a crear la función para que reciba cualquier número y a partir del mismo imprima la tabla de multiplicar, todo ello usando el ciclo while.
También podremos cambiar el límite para que imprima más allá del 10, pues lo definiremos en una constante.
Explicación del algoritmo
Voy a explicar aquí la solución con palabras, y más abajo dejo la solución en código.
Hay que definir un contador que ayudará al ciclo a ejecutarse; el ciclo irá desde el contador (1) hasta el límite (10).
Dentro del ciclo se incrementa el contador pero antes se obtiene el resultado, y para obtenerlo se multiplica el contador actual por el número del que queremos la tabla.
Solución en código
Aquí presento la función, recibe un número e imprime la tabla de multiplicar. Siéntete libre de modificarla:
"""
Imprimir tabla de multiplicar de cualquier número
con Python usando el ciclo while
@author parzibyte
"""
def imprimir_tabla(numero):
# Se supone que las tablas llegan hasta el 10
LIMITE = 10
# Comenzar en 1
contador = 1
while contador <= LIMITE:
resultado = contador * numero
print("{} x {} = {}".format(numero, contador, resultado))
# Incrementar contador para no caer en ciclo infinito
contador = contador + 1
# Probar función
imprimir_tabla(9)
Puedes cambiar el límite para imprimir más allá del 10. Si quieres probar el código primero instala Python en Windows o en Android.
Te invito a ver más ejercicios de Python en mi blog.
Saludos,
Soy novato en Python y encontré un código que me llamo la atención y estuve tratando de entender la sintaxis y es similar al que tienes por ejercicio:
numero = int(input(“Escribe el numero del cual quieres saber su tabla: “))
multiplicador = 1
for i in range(12): # en que parte del ejercicio la variable “i” empieza a trabajar?
resultado = numero * multiplicador
print(f”{numero} x {multiplicador} = {resultado}”)
multiplicador = multiplicador + 1 # por que la iteración se coloca después de un print?
espero que me entiendas en estos puntos que te acabo de detallar, gracias de antemanos.
Saludos
Hola. A continuación intento responder sus dudas.
en que parte del ejercicio la variable “i” empieza a trabajar? Cuando se invoca a range, este hace que la variable i “itere” desde 0 hasta ese número menos 1. Entonces i se inicia en cero y en cada paso va aumentando automáticamente de uno en uno, hasta llegar a, en el caso del código que coloca, 11. Pero como inicia en 0, se ejecuta 12 veces.
por que la iteración se coloca después de un print? Esa no es la iteración, “multiplicador” es simplemente una variable que se va a aumentando en 1 en cada paso del ciclo que lleva “i”. Se hace después del print porque primero se debe imprimir, y luego se debe aumentar. Se comienza en 1, se imprime para que el usuario lo vea, y luego se aumenta. Si fuera al revés, al inicio (en el inicio del ciclo) el usuario vería el multiplicador en 2.