令和4年度 ITパスポート 問96 解説|擬似言語の空欄(繰返し)

ITパスポート 公開問題の解説令和4年度 問96最終更新 2026-10-19

分類テクノロジ系 » アルゴリズムとプログラミング » アルゴリズムとプログラミング新しい試験範囲外(2027年度からの新しい試験には出ない分野)年度令和4年度の100問の一覧

関数calcXと関数calcYは,引数inDataを用いて計算を行い,その結果を戻り値とする。関数calcXをcalcX(1)として呼び出すと,関数calcXの変数numの値が,1→3→7→13と変化し,戻り値は13となった。関数calcYをcalcY(1)として呼び出すと,関数calcYの変数numの値が,1→5→13→25と変化し,戻り値は25となった。プログラム中のa,bに入れる字句の適切な組合せはどれか。

〔プログラム1〕
○整数型: calcX(整数型: inData)
  整数型: num, i
  num ← inData
  for (i を 1 から 3 まで 1 ずつ増やす)
    num ← [ a ]
  endfor
  return num
〔プログラム2〕
○整数型: calcY(整数型: inData)
  整数型: num, i
  num ← inData
  for ([ b ])
    num ← [ a ]
  endfor
  return num
正解と解説

正解:エ

ア× a が 2×num+i だと、calcX は 1→3→8 となり、2回目で 7 になりません。

イ× b は合っていますが、a が 2×num+i だと calcX の2回目が 2×3+2=8 になり、7 と合いません。

ウ× a は合っていますが、i が 1、4、7 と動くと calcY は 1→3→11→25 となり、途中の値が 5、13 と合いません。

エ○ 正解 a=num+2×i で calcX は 1→3→7→13、i を 2、4、6 と動かすと calcY は 1→5→13→25 となり、どちらも問題文と一致します。

解説

2つの関数は、空欄 a に同じ式が入り、繰返しの i の動き方だけが違います。先に、i が 1、2、3 と分かっている calcX で a を決め、その a を使って calcY の b を決めます。

calcX で num は 1→3→7→13 と、2、4、6 ずつ増えています。i が 1、2、3 なので、増えた量はちょうど 2×i です。calcY では 1→5→13→25 と、4、8、12 ずつ増えています。同じ式なら 2×i が 4、8、12、つまり i は 2、4、6 です。a は num+2×i、b は「i を 2 から 6 まで 2 ずつ増やす」です。

calcX(i=1、2、3)a=num+2×i のとき
i=1:1+2×1=3
i=2:3+2×2=7
i=3:7+2×3=13
calcX a=2×num+i のとき
i=1:2×1+1=3
i=2:2×3+2=8(7 にならない)
calcY(i=2、4、6)a=num+2×i のとき
i=2:1+2×2=5
i=4:5+2×4=13
i=6:13+2×6=25
calcY(i=1、4、7)のとき
i=1:1+2×1=3(5 にならない)

教科書 g37この問題の知識

アルゴリズムとプログラミング

アルゴリズムは問題を解くための手順で、順次・選択・繰返しの3つで組み立てます。流れ図と擬似言語の読み方、変数の値を書き出すトレース、空欄の埋め方、線形探索と2分探索、選択ソート・バブルソート・クイックソートと併合までを、公開問題を解ける形でまとめます。

教科書を読む →同じ分野の過去問を続けて解く(アルゴリズムとプログラミング 17問)

ITパスポートのUdemy講座を口コミで比べる。動画講座3つ・問題集3つ、受講者数・★評価・口コミつき。広告を含むページですITパスポートのUdemy講座を口コミで比べる。動画講座3つ・問題集3つ、受講者数・★評価・口コミつき。広告を含むページです

Udemy の ITパスポート講座を、受講者数・★評価・口コミで比べたページです(広告を含みます)。

過去問教科書の一覧(現行の試験の順)教科書の一覧(新しい試験の順)

出典:IPA「ITパスポート試験 公開問題」令和4年度 問96。問題文と選択肢は改変せずに引用しています(表・図は文字に書き起こしたもの)。正解は IPA 公表の解答例によります。

タイトルとURLをコピーしました