第 4 回 繰り返しは引っ張りだそう レポート課題 氏名:名和 大翔 学籍番号:C1101678 語学クラス:英語6 コース(系):政策マネジメント 1.筆記問題 A.「地面におちてあるバナナの皮とかけて、遊んでばかりいる受験生と解く。」 「その心は?」 「よくすべります。」 B.私はチョコレートとコカコーラを買って代金がいくらかかるか調べた。チョ コレートの値段は1個100円、コカコーラの値段は1L200円である。チョコレー トの数をx、コカコーラの数をyとする。 合計金額を求める式は 100 * x + 200 * y となる。 解答1:チョコレートを2個、コカコーラを1L買う。 100 * 2 + 200 * 1 = 400 確認:ktermでbc-l pan{c110167}% bc -l [~] 100 * 2 + 200 * 1 400 解答2:チョコレートを100個、コカコーラを50L買う。 100 * 100 + 200 * 50 = 20000 確認:pan{NAWA Hiroha}% bc -l [~] 100 * 100 + 200 * 50 20000 2.プログラム問題 A.1.考えた設定 チョコレートとコカコーラをいくつ買うか入力して、その合計を呼び出すよ うにした。 2.作成したプログラム #!/usr/koeki/bin/ruby def oyatu(x,y) #xとyを仮引数に設定 100 * x + 200 * y end print("おやつが食べたいですね。\n") e = gets print("チョコレートをいくつ買いますか?\n") tyoko = gets.to_i print("コカコーラを何L買いますか?\n") kora = gets.to_i goukei = oyatu(tyoko,kora) printf("合計金額は%s円になります。\n",goukei) 3.プログラム実行画面 pan{c110167}% ./def_twoparam.rb [~/Ruby] おやつが食べたいですね。 チョコレートをいくつ買いますか? 5 コカコーラを何L買いますか? 3 合計金額は1100円になります。 4.考察 pan{c110167}% bc -l [~/Ruby] 100 * 5 + 200 * 3 1100 合計金額は1100円で正しい。 B.1.考えた設定 あらかじめコカコーラをいくつ買うか固定して、チョコレートの個数を入力 して合計金額を呼び出すようにした。 2.作成したプログラム #!/usr/koeki/bin/ruby def oyatu(x) #xを仮引数に設定 y = 5 100 * x + 200 * 5 end print("コカコーラを5L買うことにしました。\n") e = gets print("さて、チョコレートをいくつ買いますか?\n") tyoko = gets.to_i goukei = oyatu(tyoko) printf("合計金額は%s円になります。\n",goukei) 3.もとにしたプログラムからの変更点 今回作成したdef_twoparam.rbをもとにした。仮引数を1つにした。 4.プログラム実行画面 pan{NAWA Hiroha}% ./def_oneparam_a.rb [~/Ruby] コカコーラを5L買うことにしました。 さて、チョコレートをいくつ買いますか? 20 合計金額は3000円になります。 5.考察 pan{c110167}% bc -l [~/Ruby] 100 * 20 + 200 * 5 3000 合計金額は3000円で正しい。 3.感想 算数や数学で学んだ代入という方法とdef-endの構文は同じしくみであると思 う。 4.参考文献 基礎プログラミング II 第 4 回 「繰り返しは引っ張りだそう」 西村まどか 先生 http://roy.e.koeki-u.ac.jp/~madoka/2011/r2/04/ #作成したプログラムを添付します。