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

基本情報技術者試験次の手続 binCount は、得点配列 arr の各値を 10 点刻みの階級(0〜9 点, 10〜19 点,…

アルゴリズムとプログラミングアルゴリズムとプログラミング計算問題難易度:normal
次の手続 binCount は、得点配列 arr の各値を 10 点刻みの階級(0〜9 点, 10〜19 点, …, 90〜99 点)に分け、各階級の度数を配列 hist に集計する。「÷ の商」は整数除算を表す。arr = {72, 65, 78, 91, 70, 55, 79, 83, 71}(要素数 9、添字は 1 から)を与えたとき、70 点台(70〜79 点)の度数 hist[7] の値はどれか。
○手続: binCount(整数型の配列: arr, 整数型の配列: hist)
  整数型: i, b
  for (i を 1 から arrの要素数 まで 1 ずつ増やす)
    b ← (arr[i] ÷ 10) の商
    hist[b] ← hist[b] + 1
  endfor
3個
度数5個
全体で9個
7個
正解
イ.度数5個

(arr[i]÷10) の商が階級番号になる。商が 7 になる 70〜79 点は 72,78,70,79,71 の 5 件であり hist[7]=5 となるため イが正しい。

?選択肢ごとの解説

ア ×70 点台を一部しか数えず 3 個とした、整数除算で 70 や 79 の境界を別階級に入れた誤りである。
イ ○(arr[i]÷10) の商が階級番号になる。商が 7 になる 70〜79 点は 72,78,70,79,71 の 5 件であり hist[7]=5 となるため イが正しい。
ウ ×全要素数 9 をそのまま答えた、特定階級に限定せず総数を数えた誤りである。
エ ×階級番号 7 を度数と取り違えて 7 個とした、添字と集計値を混同した誤りである。
この問題の「深掘り・誤答の完全解説・覚え方」は、登録すると読めます。

基本情報技術者試験は全4,036問。公開しているのはその一部で、登録すると残りも一問ごとにAI解説つきで解けます。SRS暗記カード・全真模試・弱点診断まで。

登録は1分・クレジットカード不要。無料のまま練習・暗記カード・模試まで使えます。

作成・校閲:ukamiru編集部 · 基本情報技術者試験 過去問 · fe-b-algo-0058

【基本情報技術者試験】次の手続 binCount は、得点配列 arr の各値を…|正解「度数5個」|ukamiru 過去問