第7回 基礎プログラミング II レポート課題 氏名:佐藤裕康 学籍番号:c1090911 語学クラス:英語1 コース(系):政策マネジメント 1.A a.仕様書の内容は添付した通りになります。 b.プログラムについて a.考えた設定 以前と同じ、るびおっち的プログラムの応用でロールプレイングゲーム b.作成したプログラム #!/usr/koeki/bin/ruby def message(name) STDERR.print("[1]槍\n") STDERR.print("[2]砲撃\n") STDERR.print("[3]ガード\n") STDERR.print("[4]何もしない\n") STDERR.print("[5]休む\n") end def enedama(time,guard) x = 6 * time - guard printf("%dターン目\n",time) printf("ダメージ %d\n", x) x end STDERR.printf("名前を入力して下さい") name = gets.chomp if name == "" name = "22B" end printf("%sという名前ですね。 \n",name) sleep 1 print("さっそくですが敵が現れました。\n") sleep 1 printf("%sさん頑張りましょう\n\n", name) print("行動を選んでください\n") dama = 1 enemy = 1 time = 0 while true printf("%dターン目\n", time) message(name) ans = gets.chomp.to_i message(name) dama += ans * time enemy += enedama(time,ans) if dama > 9 break end if enemy > 9 break end if time == 3 break end time +=1 print("---------------------------------------\n") end printf("%sは", name) if enemy > 10 print("敵を倒しました。\n") elsif enemy <= 8 print("敵を倒し切れず、敵が逃げた。\n") else print("力尽きました。\n") end print("終わり\n") c.元にしたプログラムからの変更点 選択肢を増やして、ゲーム性の向上と、バランスの調整です。 あとは、文章の一分変更 d.プログラムを実行した結果画面 パターン1 [5]休む 0ターン目 ダメージ -5 --------------------------------------- 1ターン目 [1]槍 [2]砲撃 [3]ガード [4]何もしない [5]休む 5 [1]槍 [2]砲撃 [3]ガード [4]何もしない [5]休む 1ターン目 ダメージ 1 --------------------------------------- 2ターン目 [1]槍 [2]砲撃 [3]ガード [4]何もしない [5]休む 5 [1]槍 [2]砲撃 [3]ガード [4]何もしない [5]休む 2ターン目 ダメージ 7 22Bは敵を倒し切れず、敵が逃げた。 終わり pan{c109091}% [~/public_html/advertise2] パターン2 pan{c109091}% ./sakuhin.rb [~/public_html/advertise2] 名前を入力して下さい 22Bという名前ですね。 さっそくですが敵が現れました。 22Bさん頑張りましょう 行動を選んでください 0ターン目 [1]槍 [2]砲撃 [3]ガード [4]何もしない [5]休む 1 [1]槍 [2]砲撃 [3]ガード [4]何もしない [5]休む 0ターン目 ダメージ -1 --------------------------------------- 1ターン目 [1]槍 [2]砲撃 [3]ガード [4]何もしない [5]休む 1 [1]槍 [2]砲撃 [3]ガード [4]何もしない [5]休む 1ターン目 ダメージ 5 --------------------------------------- 2ターン目 [1]槍 [2]砲撃 [3]ガード [4]何もしない [5]休む 1 [1]槍 [2]砲撃 [3]ガード [4]何もしない [5]休む 2ターン目 ダメージ 11 22Bは敵を倒しました。 終わり e.導き出された結果の考察 全部5の場合 pan{c109091}% bc -l [~/public_html/advertise2] 6 * 0 -5 -5 6 * 1 -5 1 6 * 2 -5 7 全部1の場合 pan{c109091}% bc -l [~/public_html/advertise2] 6 * 0 -1 -1 6 * 1 -1 5 6 * 2 -1 11 となっていて、合っているので、このプログラムは正しいと言える。 f.参考文献 共同学習者 池田 博哉 遠藤 孝之 c.はありません d.広告ページのURLは以下の通りです http://roy/~c109091/advertise2/ B は広告ページのURLを見て下さい。 a.b.c.d.を作成しました。 2.感想 ホームページの作成について、殆ど忘れていて大変だった。 以前のホームページを参考にして、見やすいホームページを作成することができ たと思います。 今回はプログラムの改良点がよくわからず、とりあえず、見やすくしてみたけど、 CGIではこうはいかないと思うので、次回のCGIの授業は頑張りたいと思います。 3.参考文献など 共同学習者 遠藤 孝之 池田 博哉