5 月 23 日のレポートについて 語学クラス:XXXX語 系:XXXX系 学籍番号:c106XXXX 氏名:XXXXXXXX 1. [1] 1987 年 5 月 17 日の誕生日を 10 進法表示にすると・・・ 0d19 . 0d87 . 0d5 .0d17 と表すことができる。 次に、10 進法表示から 2 進法表示にすると・・・ 0d 19 2 ) 19 ・・・ 余り 1 ------ 2 ) 9 ・・・ 余り 1 ------ 2 ) 4 ・・・ 余り 0 ------ 2 ) 2 ・・・ 余り 0 ------ 1 よって、0d 19 = 0b 10011 確かめ算 2の0乗×1+2の1乗×1+2の2乗×0+2の3乗×0+2の4乗×1 =1+2+0+0+16 =19 0d 87 2 ) 87 ・・・ 余り 1 ------ 2 ) 43 ・・・ 余り 1 ------ 2 ) 21 ・・・ 余り 1 ------ 2 ) 10 ・・・ 余り 0 ------ 2 ) 5 ・・・ 余り 1 ------ 2 ) 2 ・・・ 余り 0 ------ 1 よって、0d 87 = 0b 1010111 確かめ算 2の0乗×1+2の1乗×1+2の2乗×1+2の3乗×2の4乗×1+2の5乗×0+2の6乗×1 =1+2+4+0+16+0+64 =87 0d 5 2 ) 5 ・・・ 余り 1 ------ 2 ) 2 ・・・ 余り 0 ------ 1 よって、0d 5 = 0b 101 確かめ算 2の0乗×1+2の1乗×0+2の3乗×1 =1+0+4 =5 0d 17 2 ) 17 ・・・ 余り 1 ------ 2 ) 8 ・・・ 余り 0 ------ 2 ) 4 ・・・ 余り 0 ------ 2 ) 2 ・・・ 余り 0 ------ 1 よって、0d 17 = 0b 10001 確かめ算 2の0乗×1+2の1乗×0+2の2乗×0+2の3乗×0+2の4乗×1 =1+0+0+0+16 =17 と表すことができる。 最後に、2 進法表示から 16 進法表示にすると・・・ 第 4 回の授業「プログラミングの方法」より、「2 進数, 16 進数変換 (2)」 の表を参考にして解読する。 0b 10011 は、1 と 0011 に分けることができる。 よって答えは 0b 10011 = 0x 13 0b 1010111 は、101 と 0111 に分けることができる。 よって答えは 0b 1010111 = 0x 57 0b 101 は、 101 のままで良い。 よって答えは 0b 101 = 0x 5 0b 10001 は、1 と 0001 に分けることができる。 よってこたえは 0b 10001 = 0x 11 2. A) 今までに読んだ本の著者名(漢字、ローマ字表記)と題名、発行年数について B) 作成したデータ data06.dat 夜明けまで1マイル 村山由佳 murayamayuka 1998 1ポンドの悲しみ 石田衣良 ishidaira 2004 プラナリア 山本文緒 yamamotohumio 2005 ふたり 赤川次郎 akagawajirou 1989 冷静と情熱のあいだRosso 江國香織 ekunikaori 2001 冷静と情熱のあいだBlu 辻仁成 tujihitonari 1999 ネバーランド 奥田陸 onndariku 2000 世界の中心で愛をさけぶ 片山恭一 katayamakyouichi 2001 とかげ よしもとばなな yoshimotobanana 1996 いちご同盟 三田誠広 mitamasahiro 1990 C) 著者名や本の題名を調べたり、発行年数を知らせたりする。 主に、本の名前や題名を忘れてしまったとき探し出す。 D) 検索パターン 1. egrep "[亜-腕]" data06.dat 予想 : よしもとばなな 以外の著者名は全て漢字なので よしもとばなな 以外の著者名は全て検索される。 ☆実行結果☆ irsv{c106110}% egrep "[亜-腕]" data06.dat [~/Ruby] 夜明けまで1マイル 村山由佳 murayamayuka 1998 1ポンドの悲しみ 石田衣良 ishidaira 2004 プラナリア 山本文緒 yamamotohumio 2005 ふたり 赤川次郎 akagawajirou 1989 冷静と情熱のあいだRosso 江國香織 ekunikaori 2001 冷静と情熱のあいだBlu 辻仁成 tujihitonari 1999 ネバーランド 奥田陸 onndariku 2000 世界の中心で愛をさけぶ 片山恭一 katayamakyouichi 2001 いちご同盟 三田誠広 mitamasahiro 1990 ★結果の考察★ 予想通り、よしもとばなな 以外全て検索された。 2. egrep "[a-Z]" data06.dat 予想 : データで全ての著者名をローマ字で表記しているため、 全てのデータが検索される。 ☆実行結果☆ irsv{c106110}% egrep "[a-Z]" data06.dat [~/Ruby] 夜明けまで1マイル 村山由佳 murayamayuka 1998 1ポンドの悲しみ 石田衣良 ishidaira 2004 プラナリア 山本文緒 yamamotohumio 2005 ふたり 赤川次郎 akagawajirou 1989 冷静と情熱のあいだRosso 江國香織 ekunikaori 2001 冷静と情熱のあいだBlu 辻仁成 tujihitonari 1999 ネバーランド 奥田陸 onndariku 2000 世界の中心で愛をさけぶ 片山恭一 katayamakyouichi 2001 とかげ よしもとばなな yoshimotobanana 1996 いちご同盟 三田誠広 mitamasahiro 1990 ★結果の考察★ 予想通り全てのデータが検索された。 3. egrep "[ァ-ン]" data06.dat 予想 : 本の題名にカタカナが含まれているデータだけ検索される。 ☆実行結果☆ irsv{c106110}% egrep "[ァ-ン]" data06.dat [~/Ruby] 夜明けまで1マイル 村山由佳 murayamayuka 1998 1ポンドの悲しみ 石田衣良 ishidaira 2004 プラナリア 山本文緒 yamamotohumio 2005 ネバーランド 奥田陸 onndariku 2000 ★結果の考察★ 予想通りデータの中にカタカナが含まれているデータが検索された。 また、この他にも egrep "[ァ-ン$]" data06.dat でも同じ結果が得られた。 ☆実行結果☆ irsv{c106110}% egrep "[ァ-ン$]" data06.dat [~/Ruby] 夜明けまで1マイル 村山由佳 murayamayuka 1998 1ポンドの悲しみ 石田衣良 ishidaira 2004 プラナリア 山本文緒 yamamotohumio 2005 ネバーランド 奥田陸 onndariku 2000 4. egrep "[0-9]" data06.dat 予想 : 本の発行した年数をデータに加えているため、 全てのデータが検索される。 ☆実行結果☆ rsv{c106110}% egrep "[0-9]" data06.dat [~/Ruby] 夜明けまで1マイル 村山由佳 murayamayuka 1998 1ポンドの悲しみ 石田衣良 ishidaira 2004 プラナリア 山本文緒 yamamotohumio 2005 ふたり 赤川次郎 akagawajirou 1989 冷静と情熱のあいだRosso 江國香織 ekunikaori 2001 冷静と情熱のあいだBlu 辻仁成 tujihitonari 1999 ネバーランド 奥田陸 onndariku 2000 世界の中心で愛をさけぶ 片山恭一 katayamakyouichi 2001 とかげ よしもとばなな yoshimotobanana 1996 いちご同盟 三田誠広 mitamasahiro 1990 ★結果の考察★ 予想通り全てのデータが検索された。 5. egrep "9$" data06.dat 予想 : データの末尾に 9 がつくものが検索される。 ☆実行結果☆ irsv{c106110}% egrep "9$" data06.dat [~/Ruby] ふたり 赤川次郎 akagawajirou 1989 冷静と情熱のあいだBlu 辻仁成 tujihitonari 1999 ★結果の考察★ 発行年数の末尾に 9 がつく二つのデータが該当し、検索された。 6. egrep "[9$]" data06.dat 予想 : 5 と同じ結果になると考える。 ☆実行結果☆ irsv{c106110}% egrep "[9$]" data06.dat [~/Ruby] 夜明けまで1マイル 村山由佳 murayamayuka 1998 ふたり 赤川次郎 akagawajirou 1989 冷静と情熱のあいだBlu 辻仁成 tujihitonari 1999 とかげ よしもとばなな yoshimotobanana 1996 いちご同盟 三田誠広 mitamasahiro 1990 ★結果の考察★ [ ] で囲まれているため、$ の意味である「末尾につくもだけ」の検索は実行されず、 9 がつく全てのデータが検索された。 ◎発見◎ [ ] は、括られた文字のどれかが一致するものを取りだすという意味のため、 $ よりも [ ] が優先優先された結果であると考える。 7. egrep "[山]" data06.dat 予想 : データに山がついているものが検索される。 ☆実行結果☆ irsv{c106110}% egrep "[山]" data06.dat [~/Ruby] 夜明けまで1マイル 村山由佳 murayamayuka 1998 プラナリア 山本文緒 yamamotohumio 2005 世界の中心で愛をさけぶ 片山恭一 katayamakyouichi 2001 ★結果の考察★ 予想通りデータに山がついているこれらの三つが検索された。 8. egrep "[山+ァ-ン]" data06.dat 予想 : データの中に山とカタカナの両方があるものが該当し、検索される。 ☆実行結果☆ irsv{c106110}% egrep "[山+ァ-ン]" data06.dat [~/Ruby] 夜明けまで1マイル 村山由佳 murayamayuka 1998 1ポンドの悲しみ 石田衣良 ishidaira 2004 プラナリア 山本文緒 yamamotohumio 2005 ネバーランド 奥田陸 onndariku 2000 世界の中心で愛をさけぶ 片山恭一 katayamakyouichi 2001 ★結果の考察★ 予想はハズレ、山が含まれているデータとカタカナが含まれているデータが 該当し、検索された。これは、[ ] の中に + があるため、6 で発見した [ ] の優先がなされたためであると考える。 また、egrep "[山+ァ-ン]" data06.dat を実行しても答えは同じである。 ☆結果の考察☆ irsv{c106110}% egrep "[山+ァ-ン]" data06.dat [~/Ruby] 夜明けまで1マイル 村山由佳 murayamayuka 1998 1ポンドの悲しみ 石田衣良 ishidaira 2004 プラナリア 山本文緒 yamamotohumio 2005 ネバーランド 奥田陸 onndariku 2000 世界の中心で愛をさけぶ 片山恭一 katayamakyouichi 2001 3. 感想 今回の課題によって、データの使用方法がよく理解できた。正規表現を組合せて 実行してみると、優先される正規表現があるということが発見できたし、逆に、 効果が薄れてしまう正規表現もあるということが分かった。 日常生活の再現では、本の新刊が発売されたときにキーワードを正規表現を 用いて入力することで検索できる。また、名簿を番号、または あいうえお順 に 付けるときや、成績 ( 得点 ) を付けるときなどにも活用できると考える。