Escribe un programa que muestre por consola (con un print) los números del 1 a 100 (ambos incluidos y con un salto de línea entre cada impresión), sustituyendo lo siguiente:
- Múltiplos de 3 por la palabra "fizz".
- Múltiplos de 5 por la palabra "buzz".
- Múltiplos de 3 y de 5 a la vez por la palabra "fizzbuzz".
Ejemplo:
1
2
fizz
4
buzz
fizz
7
8
fizz
buzz
11
fizz
13
14
fizzbuzz
16
17
fizz
19
buzz
fizz
22
23
fizz
buzz
26
fizz
28
29
fizzbuzz
31
32
fizz
34
buzz
fizz
37
38
fizz
buzz
41
fizz
43
44
fizzbuzz
46
47
fizz
49
buzz
fizz
52
53
fizz
buzz
56
fizz
58
59
fizzbuzz
61
62
fizz
64
buzz
fizz
67
68
fizz
buzz
71
fizz
73
74
fizzbuzz
76
77
fizz
79
buzz
fizz
82
83
fizz
buzz
86
fizz
88
89
fizzbuzz
91
92
fizz
94
buzz
fizz
97
98
fizz
buzz
Código del ejercicio:
Definición de los códigos del ejercicio:
for --> el bucle for se utiliza para recorrer los elementos de un objeto iterable (lista, tupla, conjunto, diccionario, …) y ejecutar un bloque de código.in --> el operador in devuelve True si el valor se encuentra en una secuencia; False en caso contrario.
range --> es un tipo que se utiliza para representar una secuencia inmutable de números. Uno de sus principales usos es junto a la sentencia for, para definir un bucle sobre el que se itera un número determinado de veces.
if --> use if para especificar un bloque de código que se ejecutará, si una condición especificada es verdadera.
else --> use else para especificar un bloque de código a ejecutar, si la misma condición es falsa.
elif --> use else if para especificar una nueva condición para probar, si la primera condición es falsa.
== --> el operador de igualdad ( == ) regresa true si sus operandos son iguales, false en caso contrario.
% --> el operador de modulo ( % ) devuelve el resto de la división.
and --> devuelve True si ambos operandos son verdaderos.
+= --> el operador de asignación de suma ( += ) suma el valor del operando derecho a una variable y asigna el resultado a la variable.
\n --> es el carácter de salto de línea y se usa para indicar el fin de una línea de texto y el inicio de una línea nueva.
f'{}' --> un literal de cadena con formato o f-string es un literal de cadena que tiene el prefijo 'f'o 'F'. Facilita crear interpolaciones en cadenas de texto, simplificando de este modo tanto la lectura como la escritura de estas. Si quieres mostrar variables utilizando f-strings, solo tienes especificar el nombre de las variables entre llaves {}. Y al ejecutar tu código, todos los nombres de las variables serán remplazados con sus respectivos valores.
print() --> imprime un mensaje en la pantalla.
Explicación del Código:
Escribe un programa que muestre por consola los números del 1 al 100, sustituyendo los múltiplos de 3 por "fizz", los múltiplos de 5 por "buzz" y los múltiplos de 3 y 5 al mismo tiempo por "fizzbuzz".
Código Python
sustituir = ""
for i in range(1, 101):
if i % 3 == 0 and i % 5 == 0:
sustituir += "fizzbuzz\n"
elif i % 5 == 0:
sustituir += "buzz\n"
elif i % 3 == 0:
sustituir += "fizz\n"
else:
sustituir += f'{i}\n'
print(sustituir)
Explicación de cada código
- sustituir = "": Crea una variable de texto vacía donde se guardará todo el resultado.
- for i in range(1, 101):: Repite el proceso desde el número 1 hasta el 100. El número 101 no se incluye.
- if i % 3 == 0 and i % 5 == 0:: Comprueba si el número es divisible entre 3 y 5 al mismo tiempo.
- sustituir += "fizzbuzz\n": Agrega la palabra "fizzbuzz" al resultado. \n representa un salto de línea.
- elif i % 5 == 0:: Comprueba si el número es múltiplo de 5.
- sustituir += "buzz\n": Agrega la palabra "buzz" y un salto de línea.
- elif i % 3 == 0:: Comprueba si el número es múltiplo de 3.
- sustituir += "fizz\n": Agrega la palabra "fizz" y un salto de línea.
- else:: Se ejecuta cuando el número no es múltiplo de 3 ni de 5.
- sustituir += f'{i}\n': Agrega el número original y un salto de línea.
- print(sustituir): Muestra todo el resultado por consola utilizando un solo print.
Ejemplo del resultado
1
2
fizz
4
buzz
fizz
7
8
fizz
buzz
11
fizz
13
14
fizzbuzz
16
17
fizz
19
buzz
...
Por ejemplo, el número 15 se convierte en "fizzbuzz" porque es múltiplo tanto de 3 como de 5.
No hay comentarios.:
Publicar un comentario