五月九日のレポートについて XXXX語XX XXXX系 c106XXXX XXXXXXXX 1 A 二進数から十進数への変換 0b 100011=1*2の5乗+0*2の4乗+0*2の3乗+0*2の2乗+1*2+1 =32+2+1=35 35=0d 35 二進数から十六進数への変換 0b 100011 16進数の表を見ながら4桁のまとまりに変えます(後から4桁の数字の集まりに していき、最後の数字の集合が4桁にならない時は一番位の高いの数字より上を 0として4桁に揃える。) 0010=2 0011=3 この二つを並べ 23 = 0x 23 B 雨の日の行動をプログラム風に書きます STDERR.printf("雨が降ってきました、どうしますか。\n") STDERR.printf("1,傘を持っている 2,持っていない 3,雨に濡れたくない : ") i = gets.chomp if = 1ならばA(傘をさして帰る)を実行する。 printf("濡れずに") else if = 2ならばB(傘を挿さずに帰る)を実行する printf("雨に濡れたが") else if =3ならば雨が止むまで待っている printf("時間はかかったが") end printf("無事に家に着くことが出来ました。") 2 A #!/usr/koeki/bin/ruby it=0 #今の体重 h=0 #歩いた歩数 s=1000 #何歩で一キロ減るかの数字 STDERR.printf("今の体重はいくらですか :") it = gets.chomp.to_f #小数点計算させたいので.to_fを使用 while it >= 60 #60キロを超えたら終る STDERR.printf("何歩歩きましたか? :") h = gets.chomp.to_f s = s.to_f h /= s.to_f #此処で歩いた歩数で何歩減るかの計算 it -= h.to_f #今の体重から何キロ減るかの計算 printf("今の総体重は %d [kg]です。\n",it) #今の体重を表示させる if it <= 35 #もし35より軽く成った時は以下の文を終りの文の前に持って来る printf("痩せすぎじゃないですか?\n") printf("何はともあれ…") break end end printf("ダイエット達成おめれとう!!!\n") この様なプログラムを組んでみました。 参考にしたプログラムは「rcpt.rb」と「お腹回り」、「カロリー」のプログラ ムの動作を参考にしてこのプログラムを書きました。 結果画面 1 今の体重はいくらですか :98 何歩歩きましたか? :4545 今の総体重は 93 [kg]です。 何歩歩きましたか? :73254 今の総体重は 20 [kg]です。 痩せすぎじゃないですか? 何はともあれ…ダイエット達成おめれとう!!! 考察 この時点では計算の間違えはないが、小数点以下が表示されませんでした。 結果画面 2 今の体重はいくらですか :90 何歩歩きましたか? :12342 今の総体重は 77 [kg]です。 何歩歩きましたか? :23675 今の総体重は 53 [kg]です。 ダイエット達成おめれとう!!! 考察 数値を変えてみたが小数点以下は表示されませんでしたが、此処まででプログラ ムとして自分の思った通りに動いてくれている事が分かりました。 結果画面 3 今の体重はいくらですか :80 何歩歩きましたか? :500 今の総体重は 79 [kg]です。 何歩歩きましたか? :500 今の総体重は 79 [kg]です。 何歩歩きましたか? :500 今の総体重は 78 [kg]です。 何歩歩きましたか? :500 今の総体重は 78 [kg]です。 何歩歩きましたか? :500 今の総体重は 77 [kg]です。 何歩歩きましたか? :500 今の総体重は 77 [kg]です。 何歩歩きましたか? :500 考察 この結果画面を見ると、小数点以下は表示されないが確かに存在していると言う 事が分かりました。 3 感想 今回は1個のプログラムで時間がかかり他にあった課題が出来なかったので今度 はもっと高度なプログラムに挑戦したいです。