語学クラス:XXXX語XX 系: XXXX系 学籍番号: C106XXXX 氏名: XXXXXXXX 1. A.2進数表示の 100011 10進数 0b100011=1×2の5乗+1×2+1×2の0乗 =32+2+1=35 0b100011=0d35 16進数 0b100011 右から4桁ずつ分けると 10 0011 0b10=0b0010=0x2 0b0011=0x3 つまり2と3。 よって、23となる。 0b100011=0x23 B.家に帰ったとき鍵がかかっていた。 「もし玄関の鍵を持っていたら開けて入り、そうでなければ 隣接している柿の木を登り自分の部屋のベランダから入る」 というプログラムをつくる場合、 if 家に帰る if 玄関の鍵を持っている 玄関の鍵を開ける end unless 玄関の鍵を持ってないときは 隣接している柿の木を登り自分の部屋のベランダから入る end end 2. C. 誕生日が11月なので2007年11月の銀行行く予定(?)みたいなのを作った。 #!/usr/koeki/bin/ruby STDERR.print("2007年11月の銀行行く予定の日付を入力してください。: ") day = gets.chomp.to_i d = (3 + day) % 7 if d == 0 wday = "Sun." elsif d == 1 wday = "Mon." elsif d == 2 wday = "Tue." elsif d == 3 wday = "Wed." elsif d == 4 wday = "Thu." elsif d == 5 wday = "Fri." elsif d == 6 wday = "Sat." end if d == 0 #最初ifとelseしか知らなくて print("NG。") #日曜のみNGということになったり elsif #したので調べてみたらelsif d == 6 #を使ったら上手くいった。 print("NG。") else print("OK。") end printf(" %d日で %sです。\n",day, wday) 実行画面 irsv{c106113}% ./bank.rb [~/Ruby] 2007年11月の銀行行く予定の日付を入力してください。: 1 OK。 1日で Thu.です。 irsv{c106113}% ./bank.rb [~/Ruby] 2007年11月の銀行行く予定の日付を入力してください。: 2 OK。 2日で Fri.です。 irsv{c106113}% ./bank.rb [~/Ruby] 2007年11月の銀行行く予定の日付を入力してください。: 3 NG。 3日で Sat.です。 irsv{c106113}% ./bank.rb [~/Ruby] 2007年11月の銀行行く予定の日付を入力してください。: 4 NG。 4日で Sun.です。 irsv{c106113}% ./bank.rb [~/Ruby] 2007年11月の銀行行く予定の日付を入力してください。: 5 OK。 5日で Mon.です。 irsv{c106113}% ./bank.rb [~/Ruby] 2007年11月の銀行行く予定の日付を入力してください。: 6 OK。 6日で Tue.です。 irsv{c106113}% ./bank.rb [~/Ruby] 2007年11月の銀行行く予定の日付を入力してください。: 7 OK。 7日で Wed.です。 irsv{c106113}% ./bank.rb [~/Ruby] 2007年11月の銀行行く予定の日付を入力してください。: 8 OK。 8日で Thu.です。 参考資料: http://roy/~madoka/2007/r1/04/ より抜粋 3.感想 2のやつはカレンダーのやつを変えればすぐいけるのではないか、と思って チャレンジしてみたが思うようにいかず結構な時間がかかってしまった。 でもifの使い方を再度学んで前よりは理解が深くなったと思う。 プログラミングの世界は本当に大変である。 しかしプログラムが上手く稼動したときは嬉しかった。 これからもっと情報のページなどを見て頑張って行きたい。