さんごー日記。

映画や本やゲームの感想をゆるく記録したり、プログラミングの勉強をゆるく記録するゆるい日記です。

応用情報処理技術者試験の過去問題を解きながらメモ。2日目。

応用情報処理技術者試験の過去問題を解きながらメモの2日目です。

ぼちぼちやっていきます。

 

 

逆ポーランド記法

選択肢の中から逆ポーランド記法を選ぶという問題。

知っていれば問題無し。

一回覚えたはずだが記憶があいまいになっていたので改めて確認しました。

 

覚えておくのは「演算子を値の後に書く」という事。

A+Bという式はAB+となります。

ややこしいのが、

E=A+Bという式は、EAB+=となるという所。文字が全部つながって分かりずらいったらない。

コンピューターにとっては単純なスタック操作で演算処理を実装できるので、この並び順が都合が良い場合があるというお話。

 

「ポーランド記法」の名前の由来はポーランド人数学者のヤン・ウカシェヴィチという人が考えたから。ここテストには出ない。

 

配列を用いてスタックを実装する場合の構成要素

「配列を使ってスタックを実装するために必要な要素は何か」という内容の問題。

選択肢としては「スタックに最後に入った要素を示す添え字の変数」とかそういうモノ。

PHPとかのように添え字を気にしなくてもスタックが実装できる言語しか触れてない人には意味不明になりそうな問題。

問題の作り方が下手な気がしないでもない。どのプログラミング言語においての話なのか前提が足りないような…

あえてなんだろうか。出題者の気まぐれに対応できるはばひろい知識を試されているのだろうか。

 

オーダー記法の説明で正しい物を選ぶ

アルゴリズムの計算量を示す「O(1)」とか「O(n)」とかのアレですね。

「計算量の上限値を表す」といったような説明が正解。

他の言い方をすると、変数を極限に飛ばしたときの計算量を表すということ。

 

別名があって、「ランダウの漸近記法」とも呼ぶらしい。

 

再起関数をトレースする問題

再起関数の式を示されて、「加算の回数が何回になるか」というのを聞く問題。

とりあえずシミュレーションして計算数を数えれば解ける。

再起の回数がめちゃくちゃ多くなる場合は計算方法も考えないといけなくなるが、そいういう問題も出るかなぁ。

 

共有ライブラリのプログラムの性質に関する問題

問題文に対して適切な言葉を選ぶ問題。言葉を知っていればさほど難しくは無い。知らないと無駄に悩む。

以下の言葉が出てた。

 

  • リエントラント
  • リカーシブ
  • リユーザブル
  • リロケータブル

 

リカーシブは再起、リユーザブルは再利用性かな。

リエントラントとリロケータブルというのがイメージつかなかったので調べておく。

 

リエントラントとは「再入可能」という事。

割り込み処理が発生した時に、割り込まれた側が無事に処理を完了できるようにすることと理解。

シングルスレッドのシステムでの概念であり、マルチスレッドのシステムでつかうスレッドセーフとは別のもの。

このあたり、厳密な説明はけっこうややこしいので割愛。

 

リロケータブルとは「再配置可能」という事。そのまんまですが、意味はメモリ上のどこにおいても同じように動作するという事。

 

あるシステムにおいてどの属性が必要かという内容の問題だが、「どの属性も場合によっては必要じゃないか」などという複雑な事は考えてはいけない気がする。出題者の意図をシンプルに読み取る力が必要になる…

 

 

 

 

平成29年度のに対応した過去問題集はこちら。

応用情報処理技術者試験は、その時その時のトレンドを取り入れた問題が出題されます。最新の情報をチェックしておくと良いでしょう。 

平成29年度【春期】応用情報技術者 パーフェクトラーニング過去問題集 (情報処理技術者試験)

平成29年度【春期】応用情報技術者 パーフェクトラーニング過去問題集 (情報処理技術者試験)

 

 

 

今回は以上です。

またよろしくお願いいたします。