第 4 回 繰り返しは引っ張りだそう レポート課題 氏名:菊地瑞紀 学籍番号:c1100673 語学クラス:英語6 コース(系):地域共創コース 1-A 「宮原絵美里」とかけまして、「就職難の大学生」と解きます そのこころは どちらも 食(職) に飢えています。 1-B もずくちゃんはグミとうどんを買って代金がいくらかかるか調べました。 うどんの値段は 1 個 98 円、の値段は 1 個 158 円である。 もずくちゃんはうどんを3つとグミを2つ買いました。 支払う代金は、670円です。 2-A 【考えた設定】 もずくちゃんがスーパーに行って、うどんとグミを買うという設定を思いつきました。 【プログラム本体】 #!/usr/koeki/bin/ruby def total(u,g) #関数を total 仮引数を u , g とする 158*u + 98*g #計算式 end printf("うどんを何個買いますか(1つ158円):") udon = gets.to_i #うどんの個数を入力 printf("グミを何個買いますか(1つ98円):") gumi = gets.to_i #グミの個数を入力 printf("お買い上げ合計%d円です。\n",total(udon, gumi)) 【実行結果】 pan{c110067}% ./def_twoparam.rb [~/Ruby] うどんを何個買いますか(1つ158円):3 ぐみを何個買いますか(1つ98円):5 お買い上げ合計964円です。 pan{c110067}% ./def_twoparam.rb [~/Ruby] うどんを何個買いますか(1つ158円):3 ぐみを何個買いますか(1つ98円):2 お買い上げ合計670円です。 【確認結果】 pan{c110067}% bc -l [~/Ruby] 158*3+98*5 964 158*3+98*2 670 【考察】 うどんとグミが好きなので、この設定を考えました。 bc -l で確認したら実行結果と合っていたので、このプログラムは正しいといえ ます。 2-B 【考えた設定】 うどんを絶対3つ買うということにして、グミの個数だけ変更出来るようにしま した。 【プログラム本体】 #!/usr/koeki/bin/ruby def total(u,g) #関数を total 仮引数を u , g にしました u = 3 #うどんの買う個数を3つに固定しました 158*u + 98*g #計算式 end printf("ぐみを何個買いますか(1つ98円):") gumi = gets.to_i #グミ個数を入力 printf("お買い上げ合計%d円です。\n",total(udon, gumi)) 【実行結果】 pan{KIKUCHI Mizuki}% ./def_oneparam_bar.rb [~/Ruby] ぐみを何個買いますか(1つ98円):4 お買い上げ合計866円です。 pan{c110067}% ./def_oneparam_bar.rb [~/Ruby] ぐみを何個買いますか(1つ98円):3 お買い上げ合計768円です。 【確認結果】 pan{c110067}% bc -l [~/Ruby] 158*3+98*4 866 158*3+98*3 768 【考察】 実行結果と確認の計算結果が合っていたので、このプログラムは正しいといえま す。 3 感想 義務教育で学んだ計算式と聞いて、 f(x) = ax (aは定数で a≠0) というのを思い出しました。 今回のBのプログラムで考えると、f は total で (x) は g としました。 a は 98 で g はグミの個数です。 このことから、義務教育でならった計算式と同じ仕組みだということが分かりま した。 【共同学習者】 宮原絵美里さん 【参考文献】 西村まどか 第4回 基礎プログラミングII (繰り返しは引っ張りだそう) 関数だっ て繰り返し http://roy/~madoka/2011/r2/04/r2_04_02_theme_02_function.html ----------------------- 東北公益文化大学 公益学部 公益学科  2年 菊地瑞紀 c110067@f.koeki-u.ac.jp -----------------------