はじめに
どーも、学生エンジニアのゆうき(@engieerblog_Yu)です。。
今回はCPUが1~100のうちランダムで選んだ数を、できるだけ少ない回数で当てるという簡単なゲームをつくってみました。
大学の課題で出されている方も多いと思うので参考にしてみてください。
全体のコード(改良前)
コードはこちらです。
import random
# CPUが選んだ1~100のランダムな数
cpu_number = random.randint(1,100)
# 何回で当てることができたか数える変数
count = 0
while(True):
user_number = int(input('1~100でCPUが選んだ数字を予想してください'))
# カウントを増やす
count = count + 1
# CPUが選んだ数より小さい場合
if (cpu_number > user_number):
print('CPUが選んだ数字より小さいです')
# CPUが選んだ数より大きい場合
elif (cpu_number < user_number):
print('CPUが選んだ数字より大きいです')
# CPUが選んだ数と一致した場合
else:
print('正解です')
print('結果:{}回'.format(count))
break
while文の中にif文を入れてCPUと同じ数字を入力した時に「正解です」と出力し、countの値を結果として出します。
その後breakでwhile文を抜けてプログラム終了という流れになります。
少し発展ですが入力が「あ」などの文字列を入れてしまうと数字と比較することができないためエラーとなります。
その場合にtry-catch文を使うとより良いプログラムになります。
大学の課題ってなんであんなに多いんだろうね。
全体のコード(改良版)
import random
# CPUが選んだ1~100のランダムな数
cpu_number = random.randint(1,100)
# 何回で当てることができたか数える変数
count = 0
while(True):
try:
user_number = int(input('1~100でCPUが選んだ数字を予想してください'))
# カウントを増やす
count = count + 1
# CPUが選んだ数より小さい場合
if (cpu_number > user_number):
print('CPUが選んだ数字より小さいです')
# CPUが選んだ数より大きい場合
elif (cpu_number < user_number):
print('CPUが選んだ数字より大きいです')
# CPUが選んだ数と一致した場合
else:
print('正解です')
print('結果:{}回'.format(count))
break
except ValueError:
print('数字を入力してください')
このようにすることで誤って文字列を入力した時に以下のようになります。
今回はこれでおわりにゃ。
最後に、
- 大学のPythonの講義が理解できないから単位取れるか不安
- プログラミングを使ったバイトやインターン、就職に興味がある
という方向けに「私はPythonを使えます!」ということができるくらいプログラミングを上達することができるおすすめ講座を紹介したいと思います。
Pythonの勉強方法【おまけ】
上記に当てはまった人はUdemyというオンラインプログラミング学習プラットフォームにあるこちらの講座がおすすめです。
上記の講座のコースを全て受ければ即Pythonエンジニアとして働くことができるくらいのスキルを身につけることができます。
上記の講座は豊富なコースがあるので単位やバイト、インターン程度であれば必要だと思った箇所だけ受けるなんてことも可能です。
私が受けたPythonの講座の中では最も良かったですしこの講座を受けるだけで本質的にプログラミングを理解することができると思います。
プログラミングについて予備知識が無いという前提の講座ですし、質問をすることもできるので自分のプログラミングスキルに自信がない方で、頑張ってみたいと思っていたらぜひ受けてみて欲しい講座となっています。
自分の未来に投資しよう。サイバーセール中はUdemyコースが最大90%OFF。他にもいろいろ投稿してるにゃ。
コメント