応用情報22年秋 午後 問2 設問1
【解き方】
午後の問題でも、具体的に考えることは大事です。
この問題における「具体的」とは、
・図1のプログラムと図2の構文規則の関係
・図2の構文規則に出てくる非終端記号と、図3のプログラムの関係
です。あと、字句の種類とgettoken()の戻り値の関係も、当然重要なのですが、それは、表を見れば、わかりますよね。
設問1は、「図1のプログラムと図2の構文規則の関係」が判れば、解けるのですが、実は、問題文中に、書いてあります。8ページ下から3行目「例えば」のところ。まとめると・・・
Short aa ;
<宣言部記述>::= <宣言記述子> <イ> ;
さて、問題は<イ>です。aaは、英字で始まっているし・・・と考えると、識別子が、妥当ですかね。
で、のこりは、<ア>と<ウ>。
まあ、わかっちゃう人にはわかっちゃうけど、まったく、わかんなかったと仮定して、この問題を解くことを考えると・・・
ここで、受験テクニックというか、実務の上でも役立つテクニック。
判らなかったら、規則性を探せ!
規則性がある場合、それを適用すればいい。
そうやって考えると、
<記号A>::=<記号B>{<記号B>}
の組み合わせがあるということがわかる。
実行部、式など。そして、聞かれている宣言部、項も、この形。
宣言部と、実行部は、プログラムを構成する要素。対等な立場。同じパターンの可能性大。
というかんじで、そもそも、
<記号A>::=<記号B>{<記号B>}
って、どういう意味?と考えると、問題文から{<記号B>}は、記号Bの0回以上の繰り返しとわかる。
ということは、その前に<記号B>を書くと、記号Bの1回以上の繰り返しとなる。
ってことは、このパターンを適用して、妥当そうだ。
適用すると、
アは、宣言部記述
ウは、因子
となる。まとめると、
【答え】
ア:宣言部記述
イ:識別子
ウ:因子
【解き終わって】
1.まず、規則性を見つける
2.規則が見つかったら、適用してみて、おかしくないか確認する
3.できれば、その規則の構造とか、どうしてそうなるのかについて考える
というのは、試験でも、現場でも、大事な手法になりますね。
帰納法的な考え方。
【受験テクニック】
午後の問題でも、具体的に考えることは大事です。
判らなかったら、規則性を探せ!
★(PR) まぐまぐでメルマガ始めました。以下のとおりです。よかったら、登録してくださいね!
●メルマガID:0001289711
【メルマガタイトル】 試験と実務の関連を説明する−実践!情報処理試験講座 メール版
【個別ページ】 http://www.mag2.com/m/0001289711.html