国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > Python > 正文

python完成FizzBuzzWhizz問題(拉勾網面試題)示例

2019-11-25 18:25:31
字體:
來源:轉載
供稿:網友

拉勾網面試題

1. 你首先說出三個不同的特殊數,要求必須是個位數,比如3、5、7。
2. 讓所有學生拍成一隊,然后按順序報數。
3. 學生報數時,如果所報數字是第一個特殊數(3)的倍數,那么不能說該數字,而要說Fizz;如果所報數字是第二個特殊數(5)的倍數,那么要說Buzz;如果所報數字是第三個特殊數(7)的倍數,那么要說Whizz。
4. 學生報數時,如果所報數字同時是兩個特殊數的倍數情況下,也要特殊處理,比如第一個特殊數和第二個特殊數的倍數,那么不能說該數字,而是要說FizzBuzz, 以此類推。如果同時是三個特殊數的倍數,那么要說FizzBuzzWhizz。
5. 學生報數時,如果所報數字包含了第一個特殊數,那么也不能說該數字,而是要說相應的單詞,比如本例中第一個特殊數是3,那么要報13的同學應該說Fizz。如果數字中包含了第一個特殊數,那么忽略規則3和規則4,比如要報35的同學只報Fizz,不報BuzzWhizz。

現在,我們需要你完成一個程序來模擬這個游戲,它首先接受3個特殊數,然后輸出100名學生應該報數的數或單詞。

復制代碼 代碼如下:

def check(a, dic, d):
    answer = ''
    if str(a) in str(d):
        return dic[a]
    for x in dic:
        if not (d % x):
            answer = answer + dic[x]
    if not answer:
        return d
    return answer

if __name__ == '__main__':
    a = int(raw_input('input u a: '))
    b = int(raw_input('input u b: '))
    c = int(raw_input('input u c: '))
    dic = {a: 'Fizz', b: 'Buzz', c: 'Whizz'}
    for x in xrange(1, 101):
        print check(a, dic, x)

復制代碼 代碼如下:

['Fizz'[(str(3)not in str(i))*4:]or 'Fizz'[i % 3 * 5 : ] + 'Buzz'[i % 5 * 5 : ] + 'Whizz'[i % 7 * 5 : ] or i for i in range(1,101)]

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 申扎县| 林芝县| 新绛县| 顺义区| 家居| 吉木萨尔县| 三亚市| 安泽县| 望谟县| 永德县| 延长县| 柳州市| 托克逊县| 临武县| 吉首市| 金山区| 申扎县| 安阳市| 梁山县| 盐池县| 义乌市| 贞丰县| 泰州市| 井研县| 丹东市| 泗洪县| 洪泽县| 称多县| 山西省| 孟连| 迁安市| 图木舒克市| 辛集市| 兴义市| 富裕县| 盐亭县| 高台县| 扶余县| 徐州市| 双城市| 遂溪县|