このディレクトリの索引

# 出典 :: C/C++の宿題片付けます 131代目 #840 # コンピューターに関数randを使用して02の整数を作らせ、 # 0:グー 1:チョキ 2:パー # に対応させておく。キーボードより整数(02)を入力し、コンピューターと対戦させ、結果を判定し表示する # 最後に、再度対戦するなら1、もう終わるなら0を入力し、終了の場合は「ごくろうさまでした」と表示して終わるプログラム # # 実行例 # 0:グー、1:チョキ、2:パーです。どれを出す?1 # 私はグーあなたはチョキあなたの負けです。 # もう一度やる?(はい:1、いいえ:0):1 # 0:グー、1:チョキ、2:パーです。どれを出す?2 # 私はパーあなたはパー引き分けです。 # もう一度やる?(はい:1、いいえ:0):0 # ごくろうさまでした。 'グー・チョキ・パー' :- 'コンピュータとグー・チョキ・パーで競い合います。もう一度やる?の質問に0を答えたら終了します。'. 'コンピュータとグー・チョキ・パーで競い合います。もう一度やる?の質問に0を答えたら終了します。' :- 'コンピュータとグー・チョキ・パーで競い合います。', 'もう一度やる?の質問に0を答えたら終了します。'. 'コンピュータとグー・チョキ・パーで競い合います。' :- repeat, 'コンピュータはrandom関数を使って自分の拳を決めます。あなたの入力した拳と競い、その結果を表示します。'. 'コンピュータはrandom関数を使って自分の拳を決めます。あなたの入力した拳と競い、その結果を表示します。' :- 'コンピュータはrandom関数を使って自分の拳を決めます。'(_私の拳), 'あなたの入力した拳と競い、'(_私の拳,_あなたの拳,_判定), 'その結果を表示します。'(_私の拳,_あなたの拳,_判定). 'コンピュータはrandom関数を使って自分の拳を決めます。'(_私の拳) :- M is random(3), 'グー・チョキ・パーの整数割り当て'(_私の拳,M). 'あなたの入力した拳と競い、'(_私の拳,_あなたの拳) :- 'あなたの入力した拳と'(_あなたの拳), 競い(_私の拳,_あなたの拳,_判定). 'あなたの入力した拳と'(_あなたの拳) :- write('0:グー、1:チョキ、2:パーです。どれを出す?'), 整数を得る(N), 'グー・チョキ・パーの整数割り当て'(_あなたの拳,N). 競い(_私の拳,_あなたの拳,_判定) :- 'グー・チョキ・パーの判定'(_あなたの拳,_私の拳,_判定). 'その結果を表示します。'(_私の拳,_あなたの拳,_判定) :- writef('私は %w あなたは %w %wです\n',[_あなたの拳,_私の拳,_判定]). 'もう一度やる?の質問に0を答えたら終了します。' :- write('もう一度やる?(はい:1、いいえ:0): '), 整数を得る(RN), RN = 0. 'グー・チョキ・パーの判定'(_あなたの拳,_私の拳,引き分け) :- 'グー・チョキ・パーの引き分け'(_あなたの拳,_私の拳). 'グー・チョキ・パーの判定'(_あなたの拳,_私の拳,あなたの勝ち) :- 'グー・チョキ・パーの勝ち'(_あなたの拳,_私の拳). 'グー・チョキ・パーの判定'(_あなたの拳,_私の拳,あなたの負け) :- 'グー・チョキ・パーの勝ち'(_私の拳,_あなたの拳). 'グー・チョキ・パーの勝ち'('グー',チョキ). 'グー・チョキ・パーの勝ち'(チョキ,'パー'). 'グー・チョキ・パーの勝ち'('パー','グー'). 'グー・チョキ・パーの引き分け'(_拳,_拳). 'グー・チョキ・パーの整数割り当て'('グー',0). 'グー・チョキ・パーの整数割り当て'('チョキ',1). 'グー・チョキ・パーの整数割り当て'('パー',2). 整数を得る(_整数) :- 行入力(_行), 整数入力検査(_行,_整数),!. 行入力(_行) :- read_line_to_codes(current_input,_コードならび), atom_codes(_行,_コードならび). 整数入力検査(_行,_整数) :- atom_number(_行,_整数), integer(_整数).