関数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

変数の変化から増分を逆算して式とループ条件を決める

ITパスポート2022年度 秋期96/アルゴリズムとプログラミング / アルゴリズム

選択肢

正解と解説

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

calcXは1→3→7→13と毎回2ずつ増え幅が広がっており、iが1,2,3と進むことからaはnumに2×iを足す式だと分かります。calcYは1→5→13→25で増分が4,8,12なので、iは2,4,6と進む必要があり、2から6まで2ずつ増やすループになります。

選択肢ごとの解説

出典:令和4年度 秋期 ITパスポート試験 問96(IPA)

同じ分野の他の問題

最終更新:2026-08-25/解説・選択肢ごとの解説は資格暗記が独自に作成しています。問題文と選択肢の出典は上記のとおりです。