kakashi-blog・カカシブログ・

Python備忘録を書きドローンやバイクなど好きな事で生きて行こうとしているブログ

PC python プログラミング

PythonでFizzBuzz問題を書く

投稿日:

 

FizzBuzz とは

 

元々は数人で遊ぶシンプルなゲーム。

1から順番にカウントアップして発言していき、3で割り切れる数のときは「Fizz」、5で割り切れる数の時は「Buzz]と発言していく。
また3と5の両方で割り切れる場合は「Fizz Buzz」と発言していく。

このシンプルなゲームをプログラミングで書こうというのが「Fizz Buzz問題」。

Fizz Buzz問題が書けるかで能力判断をしたり、IT企業の入社試験にも利用されている。

 

実際に書いてみた

 

for i in range(1,101):
    if i%3==0:
        if i%5==0:
            print('FizzBuzz')
        else:
            print('Fizz')
    elif i%5==0:
        print('Buzz')
    else:
        print(i)

何も考えずに(余計なことは考えずに) FizzBuzz 書いてみました。

人によって仕上がりは様々ですが、大体こんな感じになると思います。

 

言葉でフローを書くと

①for文で1から100までのループを作ります。

②if文で3で割り切れるのかの判断。割り切れれば、5で割り切れるかの判断。
割り切れれば「FizzBuzz」を出力、割り切れなければ「Fizz」を出力。

③if文で3で割り切れなければ、5で割り切れるかの判断。
割り切れれば「Buzz」を出力、割り切れなければ数字を出力。

 

言葉で書くとこんな感じになりました。

 

出力結果

 

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

 

シンプルに書いてみました。世の中にはこれを1行で表現してしまう人もいるようです。


独学プログラマー Python言語の基本から仕事のやり方まで

 

 

-PC, python, プログラミング
-

執筆者:


comment

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

関連記事

Tkinterのメッセージボックス、謎ウインドウが消えない

pythonでTkinterを使用し、メッセージボックスを使おうと思ったが、謎ウインドウが出てきて処理が止まってしまう。    ↓のやつですね   調べてみると、「ルートウィンドウが無いと勝手に生成さ …

ナイスハッシュのmining payment毎に、レートを自動で取得(python)

マイニングを始めると、どのタイミングのレートで確定申告しようかと考えると思います。 ググると結構皆さん独自で考えて行っているのが現状ですかね。 ひと月にまとめている人、円に換えたタイミングの人・・・結 …

Python備忘録 Tkinter編① 

Tkinterとは キーボード操作だけでなく、 マウスを使用した操作が可能なウィンドウやボタン、入力欄など GUI を比較的簡単に 作る事が出来るライブラリ   退屈なことはPythonにやらせよう …

カプレカ数をpythonで求める

カプレカ数とは まず6174を例にとってみます。 ’6’、’1’、’7’、’4’と桁を関係なく数字をバラバラにします。 その数字の並び替えを[最大]と[最小]になるように並び替えます。 ・最大 764 …

pythonのtkinterを使って、あまりのある割り算アプリを作ってみた

小3の娘に、あまりのある割り算の問題を出してほしいとたのまれたので、Windowsで動くアプリを作ってみました。 退屈なことはPythonにやらせよう ―ノンプログラマーにもできる自動化処理プログラミ …