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

科目B アルゴリズムとプログラミング 科目B 問1

次のプログラム中の [a] と [b] に入れる正しい答えの組合せを,解答群の中から選べ。関数function1 が受け取る引数と,関数function2 が受け取る引数とが同じとき,二つの関数は同じ値を返す。ここで,引数n と引数m は正の整数であり,引数m は引数n よりも10 以上大きい数とする。

基本情報技術者 2025年度(令和7年度)公開問題 科目B 問1の図基本情報技術者 2025年度(令和7年度)公開問題 科目B 問1の選択肢の図
参考:擬似言語の記述形式(基本情報技術者試験,応用情報技術者試験用)

問題冊子の末尾に載っている参考のページです。

擬似言語の記述形式(基本情報技術者試験,応用情報技術者試験用)擬似言語の記述形式(基本情報技術者試験,応用情報技術者試験用)
正答 カ
正答は カ。a:i を1から3まで1ずつ増やす、b:j を tempN から始めて m を超えない範囲で4ずつ増やす、の組合せです。 【function1 の働き】 n から m までの整数を一つずつ調べ、4 の倍数の個数を数えます。 【function2 の考え方】 一つ目の for で、n 以上で最初の 4 の倍数を tempN に求め、二つ目の for で、tempN から 4 ずつ増やしながら、m 以下の4 の倍数を数えます。 n 以上で最初の 4 の倍数は、n,n+1,n+2,n+3 のどれかです。
解説の続きをみる続きを閉じる
n,n+1,n+2 を調べてどれも 4 の倍数でなければ、繰返しの3回目の最後の tempN ← tempN + 1 で tempN は n+3 になり、これは必ず 4 の倍数です。よって一つ目の for は3回で足ります(a)。 4 の倍数は 4 おきに現れるので、二つ目の for は tempN から 4 ずつ増やし、m を超えない範囲で数えます(b)。 【トレース(n=5,m=23 の例)】 function1:5〜23 の 4 の倍数は 8,12,16,20 → 4 を返す function2:  一つ目の for(i=1〜3)   i=1 tempN=5 5 mod 4=1 → tempN←6   i=2 tempN=6 6 mod 4=2 → tempN←7   i=3 tempN=7 7 mod 4=3 → tempN←8  二つ目の for(j=8 から 4 ずつ、23 を超えない範囲)   j=8 count=1   j=12 count=2   j=16 count=3   j=20 count=4(j=24 は 23 を超えるので終了)  → 4 を返し、function1 と一致します。 n が 4 の倍数のとき(例 n=8)は、i=1 で 8 mod 4=0 となって 繰返しを終了し、tempN=8 のまま二つ目の for に進みます。 【ほかの選択肢(n=5,m=23 で比べる。正しい値は 4)】 ア(a:1〜2、b:n から tempN ずつ) 誤り   → tempN は 7 で止まり、j=5,12,19 の 3 イ(a:1〜2、b:tempN から m まで 1 ずつ) 誤り   → j=7〜23 の全ての整数を数えて 17 ウ(a:1〜2、b:tempN から 4 ずつ) 誤り   → tempN が 4 の倍数の 8 に届かず 7 のまま。    j=7,11,15,19,23 を数えて 5 エ(a:1〜3、b:n から tempN ずつ) 誤り   → j=5,13,21 の 3。増やす幅が 4 ではなく tempN(8)になる オ(a:1〜3、b:tempN から m まで 1 ずつ) 誤り   → j=8〜23 の全ての整数を数えて 16 【ポイント】 a は「最初の 4 の倍数に必ず届く回数」、b は「4 の倍数だけを踏む増やし方」かどうかで見分けます。

出典:令和7年度 基本情報技術者試験 科目B 公開問題 問1(独立行政法人情報処理推進機構)出典元ページ

最終更新日

この回を通しで解く この分野を年度横断で解く

「科目B アルゴリズムとプログラミング」のほかの問題

  1. 2024年度(令和6年度)公開問題 科目B 問1次のプログラム中の [  ] に入れる正しい答えを,解答群の中から選べ。
  2. 2024年度(令和6年度)公開問題 科目B 問2次のプログラム中の [  ] に入れる正しい答えを,解答群の中から選べ。
  3. 2024年度(令和6年度)公開問題 科目B 問3次のプログラム中の [  ] に入れる正しい答えを,解答群の中から選べ。
  4. 2024年度(令和6年度)公開問題 科目B 問4次の記述中の [  ] に入れる正しい答えを,解答群の中から選べ。
  5. 2024年度(令和6年度)公開問題 科目B 問5次のプログラム中の [a] ~ [c] に入れる正しい答えの組合せを,解答群の中から選べ
  6. 2026年度(令和8年度)公開問題 科目B 問1次のプログラム中の [  ] に入れる正しい答えを,解答群の中から選べ。

問題文・解答の修正依頼

スポンサーリンク