首页 > 解决方案 > FizzBu​​zz 问题,我无法解决此代码。请阅读以下输出并给出答案

问题描述

它接受一个输入 n 并输出从 1 到 n 的数字。对于 3 的每个倍数,打印“ Fizz ”而不是数字。对于每个 5 的倍数,打印“Buzz”而不是数字。对于同时是 3 和 5 的倍数的数字,输出“FizzBu​​zz”。

您需要使代码跳过偶数,以便逻辑仅适用于范围内的奇数

标签: pythonpython-3.xfizzbuzz

解决方案


除了@dratenik 提到的内容之外,对于要跳过偶数的最后一个条件,您只需添加以下内容:

def fizz_buzz_main(N):
    for i in range(1, N+1):
        if N & 1: # check for odd number, then only call, otherwise skip 
            fizz_buzz() # function already shown by @dratenik

我希望很清楚!

示例运行:
输入:n = 10
输出:["1","Fizz","Buzz","7","Fizz"]


推荐阅读