本文へスキップ

平成31年度 春期 ITパスポート試験 問71

この問題の解説と、これまでの解答の記録です。

問71
頻出度★★☆

図1のように二つの正の整数 A1, A2を入力すると, 二つの数値 B1, B2を出力するボックスがある。B1は A2と同じ値であり, B2は A1を A2で割った余りである。図2のように, このボックスを2個つないだ構成において, 左側のボックスの A1として49, A2として11を入力したとき, 右側のボックスから出力される B2の値は幾らか。

出典 平成31年度 春期 ITパスポート試験 問71
解説

問 71

  • ア

    正解 ボックスは入力 (A1, A2) に対し、B1 には A2 をそのまま、B2 には A1 を A2 で割った余りを出力する。まず左のボックスは A1=49、A2=11 なので、B1=11、B2=49÷11 の余り=5 を出力する。図2 の配線では、左のボックスの出力 (B1, B2)=(11, 5) が、そのまま右のボックスの入力 (A1, A2)=(11, 5) につながる。したがって右のボックスは A1=11、A2=5 で計算し、求める B2 は 11÷5 の余り=1 となる。よって右のボックスから出力される B2 の値は 1 であり、ア が正しい。

  • 不正解イ

    2 は、右のボックスの計算 11÷5 の「商」(2 あまり 1) を取った値。このボックスが出力するのは商ではなく「余り」なので誤り。正しくは余りの 1。

  • 不正解ウ

    4 は、左のボックスの計算 49÷11 の「商」(4 あまり 5) を取った値。ボックスは商ではなく余りを出力し、しかも問われているのは右のボックスの出力なので二重に誤り。

  • 不正解エ

    5 は左のボックスの B2 (49÷11 の余り=5)、すなわち途中結果。設問が問うのは右のボックスの B2 なので、1 段目で止めてしまった誤り。右のボックスでさらに 11÷5 の余り=1 まで計算する必要がある。

ここがポイント
  • ボックスは (A1, A2) を入力すると (B1=A2、B2=A1 を A2 で割った余り) を出力する。これはユークリッドの互除法の 1 ステップに相当する処理である。
  • ボックスを 2 個直列につないだ構成では、左のボックスの出力がそのまま右のボックスの入力になる。順に計算し、最終段のボックスの出力を読み取ること。
用語

解答の記録