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

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

関連記事

Python備忘録 selenium 自動ログイン編

前回はブラウザのスクロールまで行いました 今回はブラウザのログイン画面から自動ログインに挑戦   退屈なことはPythonにやらせよう ―ノンプログラマーにもできる自動化処理プログラミング   ◇ソー …

ブログ初心者の私がワードプレスを選んだ理由と始め方

  ブログを始めたきっかけ   ビジネス系YouTubeを見るようになり、刺激された事が大きなきっかけ。 ブログを選んだ理由は、以前からアフィリエイトには興味があり、資産になる活動をしたかったから 。 …

Python備忘録 selenium ブラウザスクロール編

ウェブブラウザをpythonで操作をしてみたい seleniumというライブラリでブラウザを操縦できる   退屈なことはPythonにやらせよう ―ノンプログラマーにもできる自動化処理プログラミング …

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

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

子供がズルをするので計算カードをpython(Tkinter)で作った

うちの小学1年生の子の宿題に「計算カード」があります。 学校からは、「時間を計ってやりなさい」と言われているようです。 もちろん計算なんかせず、めくる事が目的になって、 どれだけ早くめくれるか。みたい …