▲ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ ┏┓ ┃┃  のんびりやろう!情報処理試験! 〜1問1問コツコツと〜  ┃┃ ┃┃ 2004.6.18 vol.1258 22,484 部発行 http://www.shunzei.com/ ┃┃ ┗┛ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ ▼ ━PR━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ ◆◆◆◆ 2004秋試験対策 通信講座、e‐BL短期コース受付中!◆◆◆◆◆ 通信講座、e‐Based Learning講座短期コース<7月開講>只今申込受付中   *4月よりe‐Based Learning講座は価格改定により受講料がお得に!*     模擬テスト、オープンセミナー申込みは6月上旬より開始       詳細とお申込は http://www.itec.co.jp/ から ◆◆◆《IT教育のリーディングカンパニー》 アイテックの通信講座 ◆◆◆ ----------------------------------------------------------------------    ◆◇転職希望の皆さん! 7/10はビッグチャンスです◇◆ あの「日立製作所」が、経験者採用面談会を開催!今すぐエントリーすれば、 イムカによる十分な事前コンサルテーションで、安心して面談会に臨めます。  7月10日(土) 東京国際フォーラム ─予約制─ ▼詳しくはこちら!▼        http://211.10.20.135/a/a.cgi?k05000Gm01027 ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━PR━ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ ■今日の問題■☆(等幅フォントで見てね!) ----------------------------------------------------------------------  正規表現 [A-Z] + [0-9] * が表現する文字列の集合の要素となるものは  どれか。  ここで、  [A-Z] : 英字 1 文字を表す。  [0-9] : 数字 1 文字を表す。   *  : 直前の正規表現の 0 回以上の繰返しを表す。   +  : 直前の正規表現の 1 回以上の繰返しを表す。  ア 456789  イ ABC99*  ウ ABC+99  エ ABCDEF ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ ■解答■(出典:H11. 1種 問9) ----------------------------------------------------------------------  エ ABCDEF ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ ■解説■ ----------------------------------------------------------------------  コンピュータサイエンスの特集を続けています。  今日は、正規表現に関する問題でした。  正規表現といえば、UNIX や Perl が身近な例でしょうね。  テキストの処理を行うときには非常に強力なツールの1つです。  Windows でファイル名の指定などで用いる * や ? などの  ワイルドカードも正規表現の一部です。  ちなみに、* は複数の文字、? は1文字分を表現します。  さて、問題を解いていきましょう。もう一度問題を載せておきます。 > 正規表現 [A-Z] + [0-9] * が表現する文字列の集合の要素となるものは > どれか。 > > ここで、 > [A-Z] : 英字 1 文字を表す。 > [0-9] : 数字 1 文字を表す。 >  *  : 直前の正規表現の 0 回以上の繰返しを表す。 >  +  : 直前の正規表現の 1 回以上の繰返しを表す。  問題は [A-Z] + [0-9] * が何を表現しているかということです。  選択肢を参考すれば、何かの文字列を表していることがわかります。  そこで、[A-Z] + を前半部分、[0-9] * を後半部分というふうに分けて  考えてみることにしましょう。  まず前半部分 [A-Z] + ですが > [A-Z] : 英字 1 文字を表す。  となっていることから、先頭には英字が来るだろうと予想できます。  その直後に + の記号が入っていますね。これは >  +  : 直前の正規表現の 1 回以上の繰返しを表す。  となっています。ここでいう直前とは [A-Z] のことなので  [A-Z] を 1 回以上の繰り返すということになります。  つまり、前半部分は    先頭は英字が1文字以上(=先頭は必ず英字)  ということになります。  同様に、後半部分 [0-9] * は > [0-9] : 数字 1 文字を表す。 >  *  : 直前の正規表現の 0 回以上の繰返しを表す。  となっていることから、    数字が何文字か来る。    ただし、繰返しが0文字以上なので、数字がなくても良い。  ということがわかります。  以上をまとめると、この正規表現は   1文字以上の英字の後に、0文字以上の数字を表している。   0文字以上ということは数字がなくても良い。  ということになります。  これをふまえて、選択肢を順に見ていきましょう。 > ア 456789    これは、数字だけで構成される文字列です。    先頭には英字がないといけないので、間違いですね。 > イ ABC99*    これは、英字+数字+記号(アスタリスク)で構成される文字列です。    一見良さそうですが、記号を入れるとは書いていないので    間違いですね。 > ウ ABC+99    これは、英字+記号(プラス)+数字で構成される文字列です。    これも「イ」と同様に間違いですね。 > エ ABCDEF    これは、英字だけで構成される文字列です。    数字がなくても良いので、これが正解ですね。 ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ ◆春試験の合格発表について◆ 高度区分の発表は6月21日(月)の予定 ----------------------------------------------------------------------  春試験の高度区分の合格発表予定が公表されました。   システム監査・システム管理・データベース・エンベデッド   ソフトウェア開発  以上、5区分の合格者受験番号一覧の掲示と成績照会は、  6月21日(月)正午に開始する予定です。  今回から全ての区分での成績照会が可能になっています。  来週に向けて、受験票(受験番号とパスワード)を探しておきましょう。  JITEC : http://www.jitec.jp/  ちなみに、JITEC は 6月18日(金)17:00〜6月21日(月)正午まで  サーバメンテナンス中となり、サイトの利用ができなくなります。 ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ ◆お便りコーナー◆ テーマフリーです。ご自由にどうぞ。 ----------------------------------------------------------------------  vol.1256 の「これ、おしえてっ!」に関するお便りを3通ほど。  ○えるさん > 先日は私の質問を採用していただきありがとうございました。 > 皆さんの丁寧かつ親切な解説を読ませて頂けたので、 > ようやく理解することができました。 > 本当に感謝しています。 > これからも勉強していくうえで、自力で疑問を解決できないときには > またお世話になってしまうかもしれませんが、 > 今後ともよろしくお願い致します。  疑問点が解消されたようで、良かったですね(^^)  回答を送っていただいたみなさん、どうもありがとうございました。  ○オケマツさん > > ところで、 n=6が正解となるように問題を作るには > > どこを変えたらよいでしょうか? > > n=5 の時,62 通りで, > n=6 の時,62+64=126 通りが表せますので, > > > 60 通りの符号を作るときの n の最小値は幾らか。 > > この 60 を,63 以上 126 以下の数値に置き換えれば, > n=6 が正解の問題が出来ると思います。 > > 例) 2 種類の文字“A”,“B”を 1 個以上、最大 n 個並べた符号を作る。 >   100 通りの符号を作るときの n の最小値は幾らか。  フォロー、どうもありがとうございました。  そうですね。作りたい符号の値を変えることで、問題が作れますね。  ○リブさん > 先日の質問コーナーのフォローです。 > > > ところで、 n=6が正解となるように問題を作るには > > どこを変えたらよいでしょうか? > > 例えば命題に、「なお、この符合は一意かつ瞬時に復号可能とする」 > と言った条件を付け加える事で、正解はn=6になります。 > ですが今回は符号を作るだけの問題なので、深く考える必要はないです。  えーっと、スイマセン。  復号可能とは「符号を作り出した文字の組み合わせを割り出す」ことを  言ってるのでしょうか?  例えば、AB と BA を区別しないということでよろしいでしょうか?  フォローして頂いたのに、逆に疑問点をぶつけてしまいました(^^;; ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ ★これ、おしえてっ!(質問編)★ 回答期限:6月19日(土)の夜まで ----------------------------------------------------------------------  「この問題がわからないっ!!」という、  読者からの質問をみなさんに回答してもらおう!というコーナーです。  今回の質問はこちらです。(出典:H16. ソフトウェア 問41) ----------------------------------------------------------------------  再入可能(リエントラント)プログラムの説明として、  最も適切なものはどれか。  ア 一度実行した後、ロードし直さずに再び実行を繰り返しても、    正しい結果が得られる。  イ 実記憶上のどこのアドレスに配置しても実行することが可能である。  ウ 複数のセグメントに分割されており、セグメント単位にロードして    実行することが可能である。  エ 複数のタスクで並行して実行しても、正しい結果が得られる。 ----------------------------------------------------------------------  これに対する回答(解説)を6月19日(土)の夜までにお願いします。  このコーナーで取り上げてほしい問題のリクエストも募集中です。  回答&お便りはこちらからでもOKですよ。  もちろん、このメールマガジンに返信していただいてもかまいません。  http://www.shunzei.com/about/mail.html ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ ▼選択肢で勉強しよっ!▼(答えはこのメールの一番下にあります) ---------------------------------------------------------------------- > API(Application Program Interface) って? ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ > *********************** 投稿募集中のテーマ *********************** < ----------------------------------------------------------------------  ●「これ、おしえてっ!」で扱ってほしい問題のリクエストやその回答  ●「選択肢で勉強しよっ!」で扱ってほしい用語のリクエスト  ●「その他、試験などに関するお便り(テーマフリー)」  ハンドル名を添えて mail@shunzei.com まで送ってください!  WebからでもOK! http://www.shunzei.com/about/mail.html ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━  のんびりやろう!情報処理試験! 〜1問1問コツコツと〜(週3日発行) ----------------------------------------------------------------------  編集・発行:しゅんぜい mail@shunzei.com      ─ 発行部数 ─    発送:melma!   http://www.melma.com/     4,823 部       :まぐまぐ  http://www.mag2.com/     12,538 部       :めろんぱん http://www.melonpan.net/   5,123 部                           ───────  登録・解除:http://www.shunzei.com/mm/        22,484 部(total)  ○本の購入:http://books.rakuten.co.jp/itexam/  ○バックナンバー  ダウンロード: http://www.shunzei.com/mm/backnumber.html  立ち読み  : http://www.melma.com/mag/89/m00000189/index_bn.html  転載について: http://www.shunzei.com/about/disclaimer.html  広告掲載に関しては mail@shunzei.com まで、直接お願いします。 ----------------------------------------------------------------------  ○メールマガジンの購読の登録・解除は個人の責任で行ってください。   しゅんぜいは一切代行しません! ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ ▼選択肢で勉強しよっ!の答え▼ ----------------------------------------------------------------------  (基本情報平成16年春問33ウ)の選択肢より > アーキテクチャの異なる CPU 間でも、同じ OS とその API を > 使用することによって、プログラムの互換性を高め、 > 移植時の工数を削減することが可能である。  (基本情報平成15年秋問34イ)の選択肢より > アプリケーションから、OS が用意する各種機能を利用するための仕組み > である。  (ネットワーク平成12年秋問52)の問題文より > OS やミドルウェアの機能を利用するための仕様で、アプリケーション > プログラムの開発を容易にするために用意された関数、コマンド、 > ユーティリティなどのインタフェースの総称。  API(Application Program Interface) とは、特定のOS向けの  アプリケーションを開発・実行するときに、アプリケーションの動作に  必要な機能(モジュール)をソースから呼び出すだけで利用できる  OS側ですでに用意された関数や命令などをいいます。  Windows なら、DLL ファイルの中から関数を呼び出すことになります。  ======  今日は半ば強制的にとある資格の試験を受けさせられてきます。  すでに夜中の2時前ですが、ちょっとは勉強しないと(^^;; ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ ◆◆◆◆◆◆  今週のブックスニュース(6月11日更新) ◆◆◆◆◆◆     http://books.rakuten.co.jp/itexam/news/plf/index.html ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━