第2回 基礎プログラミング II レポート課題 氏名:花木剛志 学籍番号:C109126A 語学クラス:英語3 コース(系):地域共創コース 1、筆記問題 1-A 東北六県の特産品を hash 配列 tokusan としました。 tokusan の key と value はそれぞれ県名とその特産品にしました。 その1: key 「青森県」に対してvalueは「りんご」 その2: key 「岩手県」に対してvalueは「冷麺」 その3: key 「秋田県」に対してvalueは「きりたんぽ」 その4: key 「宮城県」に対してvalueは「かき」 その5: key 「山形県」に対してvalueは「さくらんぼ」 その6: key 「福島県」に対してvalueは「桃」 これに対応する Hash の表し方は tokusan["青森県"] = "りんご" tokusan["岩手県"] = "冷麺" tokusan["秋田県"] = "きりたんぽ" tokusan["宮城県"] = "かき" tokusan["山形県"] = "さくらんぼ" tokusan["福島県"] = "桃" また、もう一つの表し方は {"青森県" => "りんご","岩手県" => "冷麺","秋田県" => "きりたんぽ","宮城 県" => "かき","山形県" => "さくらんぼ","福島県" => "桃"} 1-B a.0d2010 = 0x ?? 2010 / 16 = 125 余り 10 125 / 16 = 7 余り 13 7 / 16 = 0 余り 7 余りを下から並べると、「7、13、10」となり、 これを十六進数になおすと、7daとなる。 よって、0d2010 = 0x7daである。 b.0d2010 = 0b ?? 2010 / 2 = 1005 余り 0 1005 / 2 = 502 余り 1 502 / 2 = 251 余り 0 251 / 2 = 125 余り 1 125 / 2 = 62 余り 1 62 / 2 = 31 余り 0 31 / 2 = 15 余り 1 15 / 2 = 7 余り 1 7 / 2 = 3 余り 1 3 / 2 = 1 余り 1 1 / 2 = 0 余り 1 余りを下から並べると、「11111011010」となる。 よって、0d2010 = 0b11111011010である。 次に、0b11111011010を十六進数に直す。 まずは下の桁から4桁ごとに、111、1101、1010と区切る。 二進数4桁が十六進数一桁を表しているので、 111 = 7 = 7 1101 = 13 = d 1010 = 10 = a となり、一問目と同等の答えとなった。 2、プログラミング問題 A、a)考えた設定 東北六県の県名とその特産品の対を、全て表示出来るようにした。 b)作成したプログラム #!/usr/koeki/bin/ruby $KCODE = 'e' # 言語を日本語にする tokusan = Hash.new # 変数をtokusanとして、Hashを使うことを宣言 tokusan["青森県"] = "りんご" # 青森県ならばりんご tokusan["岩手県"] = "冷麺" # 岩手県ならば冷麺 tokusan["秋田県"] = "きりたんぽ" # 秋田県ならばきりたんぽ tokusan["宮城県"] = "かき" # 宮城県ならばかき tokusan["山形県"] = "さくらんぼ" # 山形県ならばさくらんぼ tokusan["福島県"] = "桃" # 福島県ならば桃 print"\n〜東北六県の特産物一覧〜\n\n" for ken, sina in tokusan # hashの中で見る(for文) printf("%s の特産品は %s です。\n", ken, sina) end c、もとにしたプログラムからの変更点 元にしたプログラム 授業中に作成した 「hash_data.rb」 -変更点- ・ shop → tokusan ・ p文 → for文 d、実行結果 pan{c109126}% ./hash_for.rb 〜東北六県の特産物一覧〜 福島県 の特産品は 桃 です。 岩手県 の特産品は 冷麺 です。 青森県 の特産品は りんご です。 山形県 の特産品は さくらんぼ です。 秋田県 の特産品は きりたんぽ です。 宮城県 の特産品は かき です。 e、考察 p文をfor文に前年の先輩のプログラムを参考にして変更。 for文で司令した通りの結果が出てきたため、このプログラムは正しいといえる。 3、感想 図書館のデータベースで、「2010年に出版された本はこれ」と調べるプログラム。 4、参考文献など 参考にしたwebページ: http://roy/~madoka/2009/r2/02/crt.html 共同製作者:遠藤孝之君、横山広樹君