今回は受講生が作ったJava問題の中から良問をピックアップします。
*******Diceゲーム(S氏作)*******
連続引きができるタイプのゲーム、1を出すとそのターンで得たポイントが0になってしまうというのが面白いですね。
[ルール]
○二人で遊ぶサイコロゲーム
○サイコロを振って出た目がポイントになる
○先に目標ポイントに到達したほうが勝利
○プレイヤーは自分のターンに何度でもサイコロを振ることができるが、サイコロの目が1だった場合、そのターンに得たポイントは没収され、ターンが相手に移る。
[実行例1]
目標ポイントを設定してください>20
Aのターン
サイコロを振ります
最初の目は6
現在のポイント(6)
さらにサイコロを振る? 1:振る2:やめとく>1
サイコロの目は4
現在のポイント(10)
さらにサイコロを振る? 1:振る2:やめとく>1
サイコロの目は5
現在のポイント(15)
さらにサイコロを振る? 1:振る2:やめとく>2
ターン終了
Bのターン
サイコロを振ります
最初の目は6
現在のポイント(6)
さらにサイコロを振る? 1:振る2:やめとく>1
サイコロの目は1
残念!ポイントは(0)に戻った
Aのターン
サイコロを振ります
サイコロの目は3
現在のポイント(18)
さらにサイコロを振る? 1:振る2:やめとく>1
サイコロの目は6
A Win!
[実行例2]
目標ポイントを設定してください>20
Aのターン
サイコロを振ります
最初の目は2
現在のポイント(2)
さらにサイコロを振る? 1:振る2:やめとく>1
サイコロの目は3
現在のポイント(5)
さらにサイコロを振る? 1:振る2:やめとく>2
ターン終了
Bのターン
サイコロを振ります
最初の目は4
現在のポイント(4)
さらにサイコロを振る? 1:振る2:やめとく>1
サイコロの目は6
現在のポイント(10)
さらにサイコロを振る? 1:振る2:やめとく>2
ターン終了
Aのターン
サイコロを振ります
サイコロの目は4
現在のポイント(9)
さらにサイコロを振る? 1:振る2:やめとく>1
サイコロの目は1
残念!ポイントは(5)に戻った
Bのターン
サイコロを振ります
サイコロの目は4
現在のポイント(14)
さらにサイコロを振る? 1:振る2:やめとく>1
サイコロの目は3
現在のポイント(17)
さらにサイコロを振る? 1:振る2:やめとく>1
サイコロの目は1
残念!ポイントは(10)に戻った
Aのターン
サイコロを振ります
サイコロの目は4
現在のポイント(9)
さらにサイコロを振る? 1:振る2:やめとく>1
サイコロの目は1
残念!ポイントは(5)に戻った
Bのターン
サイコロを振ります
サイコロの目は2
現在のポイント(12)
さらにサイコロを振る? 1:振る2:やめとく>1
サイコロの目は5
現在のポイント(17)
さらにサイコロを振る? 1:振る2:やめとく>1
サイコロの目は1
残念!ポイントは(10)に戻った
Aのターン
サイコロを振ります
サイコロの目は5
現在のポイント(10)
さらにサイコロを振る? 1:振る2:やめとく>1
サイコロの目は5
現在のポイント(15)
さらにサイコロを振る? 1:振る2:やめとく>1
サイコロの目は4
現在のポイント(19)
さらにサイコロを振る? 1:振る2:やめとく>1
サイコロの目は3
A Win!
[解答例]
https://gist.github.com/mjpurin/23ead78fdb97f7569e5538c4071f5d69
コメント