5 月 23 日のレポートについて 情報基礎プログラミング XXXX XXXX系 C106XXXX XXXXXXXX ---- 1.誕生日 0d19 86年 7月 17日 0b10011,1010110 年 111月 10001日 0x13,56 年 7月 11日 0d 19 86 (年) = 0b10011、0b1010110 0d19 = 16+0+0+2+1 = 0b10011 0x19 = 0001,0011 = 1,3 = 13 0d86 = 64+0+16+0+4+2+0 = 0b1010110 0x86 = 0101,0110 = 5,6 = 56 0d 7 (月) = 4+2+1 = 0b111 = 0111 = 0x7 0d 17 (日) = 16+0+0+0+1 = 0b10001 = 0001,0001 = 1,1 = 0x11 2. A. PHANTASY STAR ONLINE episode 1&2.SEGA(C) というゲームにに登場するレアアイテムの、 とあるIDにおける入手方法(戦利品)のリストです。 B. 使いやすさ向上のため、「/」 や「・」などは省略してあります。 左から順に、「レアアイテム」「アイテムの種類」「落とす敵」「敵の登場するマップ」となります。 ドラゴンスレイヤー ソード バートル 森 ジャスティ23ST ライフル バーブル 森 セイクリッドガード 鎧 トーロウ 森 アングルフィスト ナックル エルラッピー 森 エンジェルハープ ライフル パルラッピー 森 ドラゴンスレイヤー ソード モスバートン 森 スタッグカットラリ ダブルセイバー グルグス 森 ゴッドアーム ユニット グルグスグー 森 フロウウェンの大剣 ソード ヒルデルト 森 赤のセイバー セイバー ヒルデトゥール 森 ドラゴンのツメ エネミーパーツ シルドラゴン 森 チェインソード ソード バルマー 洞窟 赤のソード ソード ゴバルマ 洞窟 ゴッドHP ユニット メルクィーク 洞窟 ギルティライト ランチャー オブリリー 洞窟 サンゲ アギト ミルリリー 洞窟 赤のダガー ダガー クリムゾンアサシン 洞窟 赤のスライサー スライサー ナノノドラゴ 洞窟 ドラゴンスレイヤー ソード プフィスライム 洞窟 デモリションコメット ダブルセイバー プイィスライム 洞窟 パンアームズの両手 エネミーパーツ パンアームズ 洞窟 ヤマト ムサシ ミギウム 洞窟 DBの盾 盾 ヒドゥーム 洞窟 ドラゴンスレイヤー ソード ダルラリー 洞窟 ジャスティ23ST ライフル ダブチック 坑道 ジャスティ23ST ライフル ダブチッチ 坑道 ドラゴンスレイヤー ソード カナバイン 坑道 アスカ ムサシ カヌーン 坑道 ルミナスフィールド 鎧 シノワブルー 坑道 シノワレッドの両手 エネミーパーツ シノワレッド 坑道 シンセスタ 合成アイテム バランゾ 坑道 ジャスティ23ST ライフル ボルオプトver2 坑道 ドラゴンスレイヤー ソード アラン 遺跡 ゴッドボディ ユニット メラン 遺跡 ラヴィスカノン セイバー デルディー 遺跡 デルセイバーの左手 エネミーパーツ デルセイバー 遺跡 サイレンスクロー クロー クロー 遺跡 モーニンググローリー クロー バルクロー 遺跡 セイクリッドクロス 鎧 インディベルラ 遺跡 スカイリーカード タリス ダークガンナー 遺跡 サイコウォンド ロッド グランソーサラー 遺跡 流星棍 ダブルセイバー ダークブリンガー 遺跡 C. とにかくわかりやすさを追究した分類にしました。 目的は「楽に目的の情報を検索すること」です。 D. いろいろと試してみたが、実用的なのは以下の3通りくらいだった。 a.egrep "^アスカ" data06.dat 指定されたレアアイテムの入手条件が表示される。 b.egrep "森$" data06.dat 指定されたマップで入手可能なレアアイテムの一覧が表示される。 c.egrep "ダブルセイバー" data06.dat 敵やアイテムの種類から情報を検索する。 E. a. irsv{c106127}%epgrep "^アスカ" data06.dat [~/Ruby] アスカ ムサシ カヌーン 坑道 b. irsv{c106127}% egrep "森$" data06.dat [~/Ruby] ドラゴンスレイヤー ソード バートル 森 ジャスティ23ST ライフル バーブル 森 セイクリッドガード 鎧 トーロウ 森 アングルフィスト ナックル エルラッピー 森 エンジェルハープ ライフル パルラッピー 森 ドラゴンスレイヤー ソード モスバートン 森 スタッグカットラリ ダブルセイバー グルグス 森 ゴッドアーム ユニット グルグスグー 森 フロウウェンの大剣 ソード ヒルデルト 森 赤のセイバー セイバー ヒルデトゥール 森 ドラゴンのツメ エネミーパーツ シルドラゴン 森 c. irsv{c106127}% egrep "ダブルセイバー" data06.dat [~/Ruby] スタッグカットラリ ダブルセイバー グルグス 森 デモリションコメット ダブルセイバー プイィスライム 洞窟 F. egrep "洞窟$" data06.dat においてはなぜか正常に作動しませんでした。 (ゴッドHP ユニット メルクィーク 洞窟 というデータが脱落する。) また、egrep "手\S+" data06.dat と入力しても何も反応がありませんでした。 (両方原因不明) 他はおおよそ予想通りの結果です。 G. "^" = データの先頭にある情報だけを検索の対象にする。 "$" = データの最後尾にある情報だけを検索の対象にする。 "|" = 複数の情報を元に検索する。片方のみが HIT していても表示される。 " " = データの全てから該当するものを検索、表示する。 実際のところ、" " と "|" さえ使えればいいのではないだろうか、と思いまし た。次点は、スペリング確認用に使える1文字検索用のものですね。 先頭と最後尾限定の方法はわかるのですが、2番目や3番目に限定する方法がわ からないことには " " に頼らざるをえないように思います。 「データベースの書き方を工夫して、" " と "|" で検索」 多くの場合において、これが有効のような気がしました。 3. 様々な検索方法を学んだけれど、実用性の程はどうなのか少し疑問なところです。 実用化するためには、まずはデータベースを組まなくてはいけないですし…。 プログラマーってけっこうすごいかもしれないと思いました。 ----Next_Part(Sat_May_26_21_23_02_2007_541)-- Content-Type: Application/Ms-Tnef Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="data06.dat" pcml6aW0pfOluaXspaSl5KG8CaW9obylyQkJpdChvKXIpesJCb+5CqW4peOluaXGpaOjsqOzo9Oj 1Aml6aWkpdWl6wml0KG8pdal6wkJv7kKpbulpKWvpeqlw6XJpayhvKXJCbO7CQmlyKG8pe2lpgkJ v7kKpaKl86Wwpeul1aWjpbmlyAmlyqXDpa+l6wmlqKXrpemlw6XUobwJCb+5CqWopfOluKWnpeul z6G8pdcJpemlpKXVpesJpdGl66XppcOl1KG8CQm/uQqlyaXppbSl86W5peylpKXkobwJpb2hvKXJ CQml4qW5pdChvKXIpfMJCb+5CqW5pb+lw6Wwpaulw6XIpeml6gmlwKXWpeulu6WkpdChvAmlsKXr pbCluQkJv7kKpbSlw6XJpaKhvKXgCQml5qXLpcOlyAmlsKXrpbCluaWwobwJCb+5CqXVpe2lpqWm pael86TOwue39QmlvaG8pckJCaXSpeulx6XrpcgJCb+5CsDWpM6lu6WkpdChvAkJpbulpKXQobwJ pdKl66XHpcilpaG8pesJCb+5CqXJpemltKXzpM6lxKXhCQmlqKXNpd+hvKXRobylxAmlt6Xrpcml 6aW0pfMJCb+5CqXBpaelpKXzpb2hvKXJCQmlvaG8pckJCaXQpeul3qG8CQnGtreiCsDWpM6lvaG8 pckJCaW9obylyQkJpbSl0KXrpd4JCca2t6IKpbSlw6XJo8ij0AkJpealy6XDpcgJpeGl66WvpaOh vKWvCQnGtreiCQqlrqXrpcalo6XppaSlyAkJpeml86XBpeOhvAmlqqXWpeql6qG8CQnGtreiCqW1 pfOlsgkJCaWipa6lyAkJpd+l66XqpeqhvAkJxra3ogrA1qTOpcClrKG8CQmlwKWsobwJCaWvpeql 4KW+pfOloqW1pbel8wnGtreiCsDWpM6luaXppaSltaG8CQmluaXppaSltaG8CaXKpc6lzqXJpeml tAkJxra3ogqlyaXppbSl86W5peylpKXkobwJpb2hvKXJCQml16XVpaOluaXppaSl4AkJxra3ogql x6Xipeqlt6XnpfOls6XhpcOlyAmlwKXWpeulu6WkpdChvAml16WkpaOluaXppaSl4AkJxra3ogql 0aXzpaKhvKXgpbqkzs6+vOoJpailzaXfobyl0aG8pcQJpdGl86Wiobyl4KW6CQnGtreiCqXkpd6l yAkJCaXgpbWltwkJpd+lrqWmpeAJCca2t6IKo8SjwqTOveIJCb3iCQml0qXJpaWhvKXgCQnGtrei CqXJpemltKXzpbml7KWkpeShvAmlvaG8pckJCaXApeul6aXqobwJCca2t6IKpbil46W5pcalo6Oy o7Oj06PUCaXppaSl1aXrCaXApdalwaXDpa8JCbmjxrsKpbil46W5pcalo6Oyo7Oj06PUCaXppaSl 1aXrCaXApdalwaXDpcEJCbmjxrsKpcml6aW0pfOluaXspaSl5KG8CaW9obylyQkJpaulyqXQpaSl 8wkJuaPGuwqloqW5pasJCQml4KW1pbcJCaWrpcyhvKXzCQm5o8a7CqXrpd+lyqW5pdWlo6G8peul yQmzuwkJpbelzqXvpdal66G8CQm5o8a7CqW3pc6l76XspcOlyaTOzr686gmlqKXNpd+hvKXRobyl xAmlt6XOpe+l7KXDpckJCbmjxrsKpbel86W7pbmlvwkJuefArqWipaSlxqXgCaXQpeml86W+CQm5 o8a7CqW4peOluaXGpaOjsqOzo9Oj1Aml6aWkpdWl6wml3KXrpaql16XIo/aj5aPyo7IJuaPGuwql yaXppbSl86W5peylpKXkobwJpb2hvKXJCQmloqXppfMJCQmw5MDXCqW0pcOlyaXcpcelowkJpeal y6XDpcgJpeGl6aXzCQkJsOTA1wql6aX0paOluaWrpc6l8wkJpbulpKXQobwJpcel66XHpaOhvAkJ sOTA1wqlx6XrpbulpKXQobykzrq4vOoJpailzaXfobyl0aG8pcQJpcel66W7paSl0KG8CQmw5MDX CqW1paSl7KXzpbmlr6XtobwJpa+l7aG8CQmlr6XtobwJCQmw5MDXCqXiobyly6XzpbClsKXtobyl 6qG8CaWvpe2hvAkJpdCl66Wvpe2hvAkJsOTA1wqlu6Wkpa+l6qXDpcmlr6XtpbkJs7sJCaWkpfOl x6Wjpdml66XpCQmw5MDXCqW5paulpKXqobylq6G8pckJpb+l6qW5CQmlwKG8pa+lrKXzpcqhvAkJ sOTA1wqltaWkpbOlpqWppfOlyQkJpe2lw6XJCQmlsKXppfOlvaG8pbWl6aG8CbDkwNcKzq7Asdv+ CQkJpcCl1qXrpbulpKXQobwJpcChvKWvpdal6qXzpayhvAmw5MDXCiAK ----Next_Part(Sat_May_26_21_23_02_2007_541)----