# サイコロを2つ転がして出た目の合計が偶数か奇数かを当てるゲーム
import random
class Saikoro:
ANS = ['偶数','奇数']
def description(self):
return "偶数:0, 奇数:1"
def your_kai_print(self, you, kai):
return 'あなた: {0}, 結果: {1}' .format(self.ANS[you], self.ANS[kai])
def kai_rtn(self):
return (random.randint(1, 6) + random.randint(1, 6)) % 2
def judge(self, you, kai):
result = you - kai
if result == 0:
return "正解"
elif result == 1:
return "はずれ"
else:
return "はずれ"
class SystemIO:
def print(self, message):
print(message)
def input(self):
return input()
class SyoriFlow:
def __init__(self, game, flow_io):
self.game = game
self.flow_io = flow_io
def play(self):
check = 1
while ( check):
check=self.play_sub()
def play_sub(self):
self.flow_io.print(self.game.description())
try:
you = int(self.flow_io.input())
kai = self.game.kai_rtn()
self.flow_io.print(self.game.your_kai_print(you, kai))
result = self.game.judge(you, kai)
self.flow_io.print(result)
return 0
except:
self.flow_io.print("0から1までの数字を入力してください。")
return 1
game = Saikoro()
flow_io = SystemIO()
flow = SyoriFlow(game, flow_io)
flow.play()
偶数:0, 奇数:1
1
あなた: 奇数, 結果: 奇数
正解
コメントをお書きください