Combat python¶
最後に実例で何かを作ってみましょう. ここでは, 折角なので,グループワークをしましょう. 各グループはB3 のみで最低三人とし, 上級生(B3 以上,院生,菊池先生含む)は, それぞれ,適当にグループに散って,参加してください.
- 勿論,種々サポートをして下さっても構いませんし, 単純に参加者の一部として,協同作業をしていただいても構いません.
ここで作り上げたいものは簡単なポーカーゲームです. とはいいつつ,厳密にポーカーを作ると大変なので, インディアンポーカーにしましょう.
ジョーカーは抜きです. 基本的には,数字が大きい方が勝ちですが, 13 は 1 に負けます.
ゲームとしては,相手の手札のみが見え, 自分は勝てると思ったら yes, 負けると思ったら no を入力します. yes だった場合は,上記ルールに基づいて勝ち負けを決めます.
かったら 2 点貰えます. 負けたら -2 点です. そもそも,ユーザが no を入力した場合, 自動的に -1 点としましょう(その都度得点を表示するようにしましょう).
これを 5 回繰り返し,最後に総合得点を出してプログラミング修了です.
最終的に各班出来たところまでを簡単に発表していただくことにします.
皆様に相談して頂きたいことは,以下の通りです.
- 必要なクラス,関数は何か (最低でも一つ以上のクラスと3つ以上の関数を用意してください)
- どのように役割分担を行うか
- プログラムをどのように書くか
筆者の注目点は,第一項目です. これはプログラミング設計と呼ばれる部分で, これの上手さにより,第二項,第三項の出来が大きく変わります.
それでは皆様頑張ってみてください.
警告
こういう機能がないか?とか, こういう風にしたいのだけどどうすればよいか? などの質問には喜んで解答します.
そもそもどうすればよいか?という類の質問に関しては, グループワークを行っているので,班の内部で完結していただけると 幸いです.