Pythonで3の倍数
2025/8/5

今回のPython練習は「3の倍数で馬鹿になる」プログラムです。昔世界のナベアツという芸人がいて(今もいると思いますが)、数字を数えていって3の倍数で馬鹿になる?アホになる?芸がありました。
私は全然テレビを見ずお笑いにも疎いのですが、調べてみると、3の倍数と数字に3がつく場合にアホになると言うのが正解のようですね。
プログラム概要
前述の通り、3の倍数と数字に3がつく場合にアホになります。具体的には、数字を入力させ、カウントアップしていき、3の倍数と数字に3が付く場合に「Crazy!!!」と表示させます。
コード
コードはこちらです。for文で入力された数字の数だけ繰り返し、if分で条件分岐して数字を分類します。
# Sekai-no-nabeatsu gets crazy when counting up numbers,
# the number is either multiple of 3 or contains 3.
num = int(input("Enter your number > "))
for i in range(num):
if i == 0:
continue
if i >= 30 and i < 40:
print(f"{i} Crazy!!!")
elif i % 3 == 0:
print(f"{i} Crazy!!!")
else:
print(f"{i}")
実行結果
長いですが、50と入力するとこうなります。
Enter your number > 50
1
2
3 Crazy!!!
4
5
6 Crazy!!!
7
8
9 Crazy!!!
10
11
12 Crazy!!!
13
14
15 Crazy!!!
16
17
18 Crazy!!!
19
20
21 Crazy!!!
22
23
24 Crazy!!!
25
26
27 Crazy!!!
28
29
30 Crazy!!!
31 Crazy!!!
32 Crazy!!!
33 Crazy!!!
34 Crazy!!!
35 Crazy!!!
36 Crazy!!!
37 Crazy!!!
38 Crazy!!!
39 Crazy!!!
40
41
42 Crazy!!!
43
44
45 Crazy!!!
46
47
48 Crazy!!!
49
for i in range(num)は0から
非常に簡単なプログラムですが、久々にPythonの勉強をしていて思い出しました。range()で指定すると、0から引数の回数だけ繰り返すと言うことです。
今回のプログラムでは50という数字を渡されましたが、繰り返しで使われるのは0から49です。ユーザの使用感としては50と入力したら1から50まで繰り返される方が自然だと思いました。(今回はやってませんが)