第 4 回 繰り返しは引っ張りだそう レポート課題 氏名:照井さつき 学籍番号:C1101589 語学クラス:中国語3 コース(系):政策マネジメント ============ 筆記問題 ============ 1A.「腐った卵」とかけて、「お化け屋敷」と解く。 その心は「キミ(黄身、気味)が悪い」。 -------- 1B. (1)ギザ大ピラミッドの面積がいくらなのか調べた。 高さは 138.74m 、底辺は 230.37m である。 (138.74) × (230.37) ÷ 2 = 15980.7669(平方メートル) よって、 15980.7669(平方メートル)となった。 これを bc -l で確かめると、 pan{TERUI Satsuki}% bc -l [~] 138.74*230.37/2 15980.76690000000000000000 となり、合っていることが分かった、。 --------- (2)ジュースと、お茶の代金を求めたい。 ジュースは 120円 のものが 4本 と、お茶は 150円 のものが 2本 である。 120 * 4 + 150 * 2 = 780(円) となった。 これをbc -l で確かめると、 pan{c110158}% bc -l [~] 120*4+150*2 780 となり、合っていることが分かった。 ========== プログラミング ========== 2A. def_twoparam.rb a.設定-------- 入力された数字を代入し、定義をつかって計算するプログラム。 b.作成したプログラム------- #!/usr/koeki/bin/ruby def drink(x,y) # ここは定義を書く 120 * x + 150 * y # 計算式 end print("お飲み物はいかがですか?\n") print("\n") STDERR.print("ジュースは何本お買い上げになりますか?\n") #本数を入力 juice = gets.to_i #本数を入力(juiceに代入) STDERR.print("お茶は何本お買い上げになりますか?\n") tea = gets.to_i #本数を入力(teaに代入) print("\n") total = drink(juice,tea) #定義の計算式をつかい、結果をtotalに代入 printf("合計は %s 円です。\n",total) c.元にしたプログラム-------- 上記 1B(2) の内容を使用した。 d.実行結果-------- pan{TERUI Satsuki}% ./def_twoparam.rb [~/Ruby] お飲み物はいかがですか? ジュースは何本お買い上げになりますか? 2 お茶は何本お買い上げになりますか? 2 合計は 540 円です。 e.結果の考察-------- プログラミング通りに実行され、計算結果もあっていた。 pan{c110158}% bc -l [~/Ruby] 2*120+2*150 540 =========== 2B. def_oneparam_a.rb a.設定-------- 入力された数字を代入し、定義にある既存の数字を使って計算するプログラム。 b.作成したプログラム------- #!/usr/koeki/bin/ruby def drink(x) # ここは定義を書く y = 3 120 * x + 150 * y # 計算式の片方には個数を決めておく end print("お飲み物はいかがですか?\n") print("\n") STDERR.print("ジュースは何本お買い上げになりますか?\n") juice = gets.to_i total = drink(juice) # 入力してもらった本数を加え、定義の計算式を使い、答えをtotalに代入 printf("合計は %s 円です。\n",total) c.元にしたプログラム-------- 上記 1B(2) と、2A の内容を使用した。 変更点 : 計算式の片方の値を入力制ではなく固定制にした。 d.実行結果-------- pan{c110158}% ./def_oneparam_a.rb [~/Ruby] お飲み物はいかがですか? ジュースは何本お買い上げになりますか? 2 合計は 690 円です。 e.結果の考察-------- プログラミング通りに実行され、計算結果も bc -l で確認したところ、 あっていた。 pan{c110158}% bc -l [~/Ruby] 2*120+3*150 690 ============= 感想 ============= 足算かけ算などの計算に、yなどを使って代入し計算することから、 義務教育で学んだ算数・数学と同じ仕組みだと思う。 表計算や簿記を使ったプログラミングは、エクセルなどの規定されている 計算式に数字を入力し、結果をグラフ化するということから 同じような仕組みだと思った。 今回はプログラミング問題 A、B はスムーズに作成できたが、 Cのグラフでエラーがおきてしまう場所があり、上手く表示できなくて 諦めてしまった。 その部分の理解がまだまだできていないと思うので、理解しておくようにし たい。 ============== 参考文献 ============== 基礎プログラミング II 第 4 回 「繰り返しは引っ張りだそう」 西村 まどか http://roy/~madoka/2011/r2/04/