IPA過去問ドリル

平成29年度 春期 基本情報技術者試験 午前 問18

テクノロジ/ソフトウェア

A,B という名の複数のディレクトリが,図に示す構造で管理されている。“¥B¥A¥B”がカレントディレクトリになるのは,カレントディレクトリをどのように移動した場合か。ここで,ディレクトリの指定は次の方法によるものとし,→は移動の順序を示す。 〔ディレクトリ指定方法〕 (1) ディレクトリは,“ディレクトリ名¥…¥ディレクトリ名”のように,経路上のディレクトリを順に“¥”で区切って並べた後に,“¥”とディレクトリ名を指定する。 (2) カレントディレクトリは,“.”で表す。 (3) 1階層上のディレクトリは,“..”で表す。 (4) 始まりが“¥”のときは,左端にルートディレクトリが省略されているものとする。 (5) 始まりが“¥”,“.”,“..”のいずれでもないときは,左端に“.¥”が省略されているものとする。

平成29年度 春期 基本情報技術者試験 午前 問18の図

出典:平成29年度 春期 基本情報技術者試験 午前 問18

正解:ア

解説

開始時のカレントディレクトリを基準に,指定方法(4)(5)に従って各パスを順に適用していきます。“¥A”は左端にルートディレクトリが省略された絶対パスなのでルート直下のAへ移動し,続く“..¥B”はその1階層上(ルート)のBへ移動,続く“.¥A¥B”はそのAディレクトリの下のBへ移動します。この結果,最終的なカレントディレクトリは“¥B¥A¥B”になります。

選択肢ごとの解説

  • 正しい。¥A(ルート直下のA)→..¥B(ルートのB)→.¥A¥B(BディレクトリのAの下のB)と移動すると,¥B¥A¥Bに到達します。
  • 誤り。この移動順では,最終的なカレントディレクトリが¥B¥A¥Bとは異なる場所になります。
  • 誤り。¥B→¥A→¥Bという移動では,途中の階層を経由せず,最終的に¥Bに戻ってしまいます。
  • 誤り。¥B¥Aから1階層上に戻ると¥Bになり,¥B¥A¥Bには到達しません。
基本情報技術者の過去問を演習モードで解く