パスポイ

関数calcXと関数calcYは,引数inDataを用いて計算を行い… ITパスポート 令和4年度 問96

テクノロジ系

関数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, b: iを1から7まで3ずつ増やす
  • イa: 2 × num + i, b: iを2から6まで2ずつ増やす
  • ウa: num + 2 × i, b: iを1から7まで3ずつ増やす
  • エa: num + 2 × i, b: iを2から6まで2ずつ増やす
正解と解説を見る

正解

エ a: num + 2 × i, b: iを2から6まで2ずつ増やす

calcXの変化(1→3→7→13)は差が2,4,6と増えていくため,num←num+2×i(aの式)で説明できる。calcYの変化(1→5→13→25)は差が4,8,12であり,同じ式num+2×iを使うにはiが2,4,6と2ずつ増える必要があるため,bは「iを2から6まで2ずつ増やす」となる。よってエの組合せが正しい。

出典:令和4年度 ITパスポート試験 問96

問題文および選択肢は独立行政法人情報処理推進機構(IPA)が公開する試験問題に基づいています。著作権はIPAに帰属します。解説は当サイトが独自に作成したものです。

解くほどポイントが貯まり、称号が上がる

無料登録すると過去問演習のスコアが月間ランキングに記録されます。1回10問・スマホでサクッと。