科目Bアルゴリズム

2025年春 科目B 問1
アルゴリズムの過去問

まずは自分で考えて、理由を確かめよう。

LET'S TRY

問題文

次のプログラム中の a と b に入れる正しい答えの組合せを,解答群の中から選べ。


関数function1が受け取る引数と,関数function2が受け取る引数とが同じとき,二つの関数は同じ値を返す。引数nとmは正の整数で,mはnよりも10以上大きい。


〔プログラム〕

○整数型: function1(整数型: n, 整数型: m)

整数型: count ← 0, i

for (iをnからmまで1ずつ増やす)

if ((i mod 4)が0と等しい) : count ← count + 1 : endif

endfor

return count


○整数型: function2(整数型: n, 整数型: m)

整数型: count ← 0, tempN ← n

整数型: i, j

for ( a )

if ((tempN mod 4)が0と等しい) : 繰返し処理を終了する : endif

tempN ← tempN + 1

endfor

for ( b )

count ← count + 1

endfor

return count

当てはまるものを、ひとつ選んでね。

1〜4キーで選択し、Enterキーで採点できます。

出典:令和7年度 基本情報技術者試験 科目B 問1
IPAの公開問題について ↗

LET'S UNDERSTAND

キホン猫と、理由を確かめよう。

自分で考えてから、解説を開いてみてね。

正解と解説を見る

正解は カ です。

function2は「n以上で最初の4の倍数を探してtempNに設定し,そこから4ずつm以下まで数える」という処理。aのforループはtempNが4の倍数に達するまでの最大反復回数=3回(4-1=3)なので「iを1から3まで」。bのforループはtempNからmまで4ずつ増やして4の倍数を数えます。

同じ分野の問題を探す →

この問題を、学びのノートに。

Xでシェア ↗

学習ノートを読み込んでいます…