基本情報トップに戻る
練習問題難易度: 標準2024年度

基本情報技術者 過去問練習問題 第1問

問題

関数 maximum は、異なる三つの整数を引数 x、y、z で受け取り、そのうちの最大値を返す。図のプログラム中の空欄に入れる正しい答えを、解答群の中から選べ。

の図表

選択肢

  1. 1x > y
  2. 2x > y and x > z
  3. 3x > y and y > z
  4. 4x > z
  5. 5x > z and z > y
  6. 6z > y

正解

2. x > y and x > z

詳しい解説を見る

解説

プログラムは「空欄の条件が真なら x を返し、そうでなく y > z なら y を、いずれでもなければ z を返す」という構造である。最初の if で x を返すのは、x が三つの中で最大であるときだけでなければならない。x が最大であることは「x が y より大きく、かつ x が z より大きい」と表せるので、条件は x > y and x > z となる。これがイである。ア(x > y のみ)では z との比較が抜け、x < z の場合に誤って x を返してしまう。後続の elseif (y > z) は、x が最大でないと確定した後で y と z の大小だけを比べれば最大値が決まることを利用している。よってイが正解。(出典: 令和6年度 基本情報技術者試験 科目B 問1)

一問一答

科目A 180問+科目B 60問

練習問題の関連問題

この調子で演習を続けよう

スキマ資格では基本情報の全2398問を分野別・難易度別に体系的に学習できます。基本情報技術者は科目A(広く浅く)と科目B(プログラミング・アルゴリズム)の両輪での対策が必要です。