第2回 基礎プログラミング I レポート課題 氏名:渡辺力 学籍番号:c1091520 語学クラス:英語3 コース:地域 1、筆記問題 1日目、1個 2日目、1+1*4=5個 3日目、5+4*4=21個 4日目、21+16*4=85個 5日目、85+64*4=341個 ということで、5日目には全ての卵が孵化する。 2、プログラム問題 A、 プログラム本体 #!/usr/koeki/bin/ruby print("卵の孵化のプログラム@\n") print("1日目…1個孵化\n") print("2日目…1個+(1個*4個)=5個孵化\n") print("3日目…5個+(4個*4個)=21個孵化\n") print("4日目…21個+(16個*4個)=85個孵化\n") print("5日目…85個+(64個*4個)=341個孵化\n") print("これにより5日目で全部孵化し終わっている。\n") 実行結果 pan{c109152}% ./print_snail.rb [~/Ruby] 卵の孵化のプログラム@ 1日目…1個孵化 2日目…1個+(1個*4個)=5個孵化 3日目…5個+(4個*4個)=21個孵化 4日目…21個+(16個*4個)=85個孵化 5日目…85個+(64個*4個)=341個孵化 これにより5日目で全部孵化し終わっている。 考察 筆記問題によるktermによる計算確認、プログラムの計算結果により5日で全て孵 化することが分かった。 参考文献 http://roy/~madoka/2010/r1/02/ 西村まどか 基礎プログラミング I 第2回 Ruby の基礎 / 計算が終ったら止まる問題 B、 #!/usr/koeki/bin/ruby print("\ 1=献上する\n") day = 1 #ひ日の初期値 2日目から計算するからday = 1とする。 houseki = 1 #献上できるのは200個までだから housekimax = 200 while houseki < housekimax printf("%d 日後 \f %d個 献上する\n", day +=1,houseki*=2) #変数1を2倍させるのでhouseki*2 #日にちは1日ずつ進むのでday=1とする。 end printf("%d 日後には200個を越えて求婚できない\n", day, houseki,-200) printf("よって%d 日後 \f %d 日後まで求婚できる\n",day-=1,houseki-200) 実行結果 pan{c109152}% ./while_snail.rb [~/Ruby] 1=献上する 2 日後 2個 献上する 3 日後 4個 献上する 4 日後 8個 献上する 5 日後 16個 献上する 6 日後 32個 献上する 7 日後 64個 献上する 8 日後 128個 献上する 9 日後 256個 献上する 9 日後には200個を越えて求婚できない よって8日後まで求婚できる 考察 ktermによる計算確認、プログラムの計算結果により9日後には求婚できなくなる ことが分かった。 3、感想 色々な人から助けてもらい完成できました。頑張って覚えて自分だけでプログラ ムを完成させられるようになりたいです。 4、参考文献 http://roy/~madoka/2010/r1/02/ 西村まどか 基礎プログラミング I 第2回 Ruby の基礎 / 計算が終ったら止まる問題 共同学習者名:布川大地、酒井信市郎、木内雄、永井絹人 協力してくれた先輩:沓澤ゆうじ先輩、くどうともや先輩