佐藤裕介 c110108 英語2 地域共創コース 筆記問題 A key "みかん" に対して "orange" key "バナナ" に対して "banana" key "りんご" に対して "apple" key "レモン" に対して "lemon" key "ぶどう" に対して "grape" これをHashで表すと eigo["みかん"]="orange" eigo["バナナ"]="banana" eigo["りんご"]="apple" eigo["レモン"]="lemon" eigo["ぶどう"]="grape" 2つ目は eigo = { "みかん" => "orange", "バナナ" => "banana", "りんご" => "apple", "レモン" => "lemon", "ぶどう" => "grape" } B a. Od2011 = Ox?? これを16進数に直すためには16で割り商が0になるまで続ける。 その後下から読み10以上の数字は16進数に合った形に直す。 16)2011 16) 125 … 11 16) 7 … 11 0 … 7 11 … b 0d2011 = 0x7bb b. 0d2011 = 0b?? これを2進数に直すために2で割り商が0になるまで続ける。 その後下から読む。 2)2011 2)1005 … 1 2) 502 … 1 2) 251 … 0 2) 125 … 1 2) 62 … 1 2) 31 … 0 2) 15 … 1 2) 7 … 1 2) 3 … 1 2) 1 … 1 0 … 1 0d2011 = 0x11111011011 プログラム問題 考えた設定 Hashの中身を全て表示するプログラムを考えた 作ったプログラム #!/usr/koeki/bin/ruby eigo = { "みかん" => "orange", "バナナ" => "banana", "りんご" => "apple", "レモン" => "lemon", "ぶどう" => "grape" } for a, b in eigo printf("%sを英語に直すと%s\n", a, b) end 実行結果 roy{c110108}% ./hash_for.rb [~/Ruby] バナナを英語に直すとbanana ぶどうを英語に直すとgrape レモンを英語に直すとlemon りんごを英語に直すとapple みかんを英語に直すとorange もとにしたプログラムから変更点 Hashの名前をeigoに変え、Hashへの入力のしかたを筆記問題の2つめの方法で 入力する方法に変えた。 考察 プログラムで"for a, b in eigo"と書いたのでkeyはaに入りvalueはbに入るので printfで表示するとき","のあとaとbをそれぞれ指定すれば表示されるのではな いかと思う。 参考文献 基礎プログラミング II 第 2 回 (なになにといえばこれこれ) 「Hash の対を表 示するには」 http://roy.e.koeki-u.ac.jp/~madoka/2011/r2/02/r2_02_07_theme_06_forprint.html 西村まどか先生 共同学習者 横山広樹 感想 Hashが実際に使われているものは、電子辞書に使われていると思う。