講評: 確認しました。こういうレポートを待っています。 画像ですが、公開には作成したホームページの許可が必要なので、 自作の写真のみ公開します。次回は自分で撮ってきた写真をどうぞ。 ---- 10 月 31 日 第 5 回レポート 「Method を自分で作ろう」 学籍番号:c106XXXX 氏名:XXXXXXXX 語学クラス: XXXX語XX 系: 環境 1−A なぞとき A とかけて、 B と解く その心は? C 「携帯ライト」とかけて、「今の自分の気力」と解く その心は? 「そんなに長くはもちません。」 「讃岐うどん」とかけて、「剣道の試合」と解く その心は? 「めんが決め手です。」 「参院選での自民党」とかけて、「酒田の天気」と解く その心は? 「風が強くてヒョウが痛いです。」 「火の用心」とかけて、「年末年始」と解く その心は? 「ねんが要るでしょう」 1−B 2変数による数式の例 −−− 数式−−− 私はセブンイレブンの店員である。 この季節は今年もまた、例年通りに クリスマス関連の予約活動をする。 クリスマスイヴゥ当日に商品が店に 届き、それを予約した客に届けるという 仕事もあるのだが、その過程で、 代金を私金でたてかえる形で レジ処理をし、そして、客から 代金を受け取ることになる。 そこで、主力となる2商品についての 合計金額がどの程度になるか把握する 必要があるため、それを数式化してみた。 主力商品A ガトーショコラ 1200円 主力商品B フルーツケーキ5号 2400円 数式 合計金額X円 = 1200a + 2400b | 解答例1 | 主力商品Aが8個、 主力商品Bが3個、 という個数で数式を シミュレートすると、結果は下記の通り。 X = 1200*8 + 2400*3 = 9600 + 7200 = 24000 合計金額 24000円 | 解答例2 | 値段の影響からか、Bの予約が 全く確保できず、一方のAに 16件の予約が入った場合。 X = 1200*16 + 2400*0 = 19200 合計金額 19200円 | 考察 | 主力商品Aを中心に予約活動を展開した方が、 主力商品Bを混合して展開するよりも 資金的な負荷が軽減されることが期待できる。 2 プログラム作成 お馴染の消防シリーズ パート2を制作してみた。 プログラム設定内容(ストーリー)は、下記の通り。 20XY年... SunRayCity... 私は、SunRay市消防局(FDSR)第235消防署の署長である。 現在、我々FDSRは、市郊外の工場火災について 消火活動を展開している。 懸命な活動により、ようやく火元に辿り着いた。 ところが、この火元が曲者だった... 火元に、炎のボスがいたのだ。 こいつのHPは2000Pもある。 ※参考、普通の炎 HP20P こいつを倒す(鎮火する)必要があるが ホースのみでは消火力が不足する。 そのため外部より消防車で援護放水を行なう。 そこで、どの程度で消火可能であるか、 シミュレーションする。 ※消防車1台の放水で放水量が3割増える。 その分、消火力も増える。 消火力が炎のHP異常になれば鎮火可能。 初期のホースのみでの放水量は10.0t、 消火力は1000である |イメージ| 2000 ≦ 消火力 でボスの鎮火が 放水量 = 消防車の台数(1台当たり3割増) |プログラム| def を mizu(水)と fire(火)に設定。 変数は boss(ボス)とした。 def mizu(ton,water) ton + 0.3 * ton * water # 消防車1台が参戦すると、放水量 3 割増 end def fire(hp, water) boss = hp - 0.1 * hp * water ** 2 # 放水が行なわれるとボスのHPが減る if boss < 0 return 0 else # 変数 boss を判定 return boss end end プログラム随処に、「sleep」を使用し、 段階的に表示されるよう仕込んだ。 また、同じフォルダ内に保存することで、 画像が表示される工夫もしてみた。 これらは、前期の消防署出動プログラムから ヒントを得た。 結果的に、ドラマチックな計算プログラムが 出来上がった。 |実行画面| ミッション!ボスを倒せ(火元を鎮火せよ)! 現在、ホース消火隊が消火活動を展開中! なお、増援の消防車が急行中! 放水を開始します: 放水量: 10.0 [t] ボスのHP: 2000 [p] 1台目の消防車が応援到着。援護放水開始! 放水量: 13.0 [t] ボスのHP: 1800 [p] 2台目の消防車が応援到着。援護放水開始! 放水量: 16.0 [t] ボスのHP: 1200 [p] 3台目の消防車が応援到着。援護放水開始! 放水量: 19.0 [t] ボスのHP: 200 [p] 4台目の消防車が応援到着。援護放水開始! 放水量: 22.0 [t] ボスのHP: 0 [p] 消火力がボスのHPに到達しました ボスを倒しました 鎮火報!鎮火報! 火災の鎮火に成功! --- Congratulation! --- というものになる。 3 −感想− やはり、消防など興味のある分野を 噛ませて課題に取り組むと、 楽しく作業ができる。 思わず、プログラム作成に熱中してしまった。 画像表示など、仕方を忘れていたものもあったが、 前期課題を引っ張りだすなどして、 何とか解決に至った。 ただし、数式か否か、 かなり疑問に残る。 計算プログラムと消防の融合には だいぶ無理があったようで、 形にするのにものすごく苦労した。 追伸 プログラムに表示させる画像データも 添付するので、実行の際は、 これらのデータも一緒に 保存願います。