Escribe un programa que imprima los números en el rango dado. Pero para los múltiplos de tres imprima "Fizz" en lugar del número y para los múltiplos de cinco imprima "Buzz". Para los números que son múltiplos de tres y cinco, imprima "FizzBuzz". Imprime una nueva línea después de cada cadena o número.

Formato de entrada: - La primera línea será el número de caso de prueba, TO. La siguiente línea tendrá TO enteros, denotados por N.

Formato de salida: - Para cada caso de prueba, imprima el número del 1 al N. Pero siga las reglas que se dan en el enunciado del problema.

ENTRADA DE MUESTRA 1

2
3 15

Este es mi código: -

n_input = int(input())

x, y = map(int, input().split(" "))

for i in range(1, x + 1):
    if i % 3 == 0 and i % 5 == 0:
        print("FizzBuzz", sep="\n")
    elif i % 3 == 0:
        print("Fizz", sep="\n")
    elif i % 5 == 0:
        print("Buzz", sep="\n")
    else:
        print(i, sep="\n")


for i in range(1, y+1):
    if i % 3 == 0 and i % 5 == 0:
        print("FizzBuzz", sep="\n")
    elif i % 3 == 0:
        print("Fizz", sep="\n")
    elif i % 5 == 0:
        print("Buzz", sep="\n")
    else:
        print(i, sep="\n")

Sé mi error de tener que imprimir de acuerdo con la entrada inicial, pero no sé cómo solucionarlo. Gracias

0
Mohd Alimuddin 28 ago. 2020 a las 15:25

1 respuesta

La mejor respuesta
k = int(input()) # useless given what we're doing below
cases = [int(i) for i in input().split()]
for case in cases:
    for k in range(1, case + 1):
        out = ""
        if (k % 3) == 0:
            out += "fizz"
        if (k % 5) == 0:
            out += "buzz"

        if out != "":
            print(out)
        else:
            print(k)

La segunda línea es una abreviatura de

cases = []
for i in input().split():
    cases.append(int(i))

Ejecutar mi cuaderno Colab

0
Aravind Suresh 28 ago. 2020 a las 18:11