表に示す構成のデータを,流れ図の手順で処理する場合について考える。流れ図中のx,y,zをそれぞれデータ区分A,B,Cと適切に対応させれば,比較("xか?","yか?","zか?")の回数の合計は,最低何回で済むか。
逐次判定は出現頻度の高い条件を先に置くと比較が減る

| データ区分 | 件数 |
|---|---|
| A | 10 |
| B | 30 |
| C | 50 |
| その他 | 10 |
選択肢
- ア170
- イ190
- ウ230
- エ250
正解と解説
正解:ア 170
判定は上から順に行われるので、1番目の判定に該当するデータは1回、2番目なら2回、3番目なら3回の比較が必要になる。比較回数を最小にするには件数の多い区分ほど先に判定すればよく、C(50件)→B(30件)→A(10件)の順にする。合計は50×1+30×2+10×3+その他10×3=170回となる。
選択肢ごとの解説
- ア件数の多い順に判定した場合の最小値で正しい。
- イ判定順が最適でない場合の値。
- ウ件数の少ない区分を先に判定した場合に増える値。
- エ最も非効率な順序に近い値。
同じ分野の他の問題
- 関数isPrimeは、引数として与えられた正の整数が、素数であればtrueを、素数でなければfalseを戻り値とする。例…2026年度 秋期 問85
- 関数calculateAmountOfPrizeは、業務改善の効果における改善額と短縮期間を、それぞれimproveme…2025年度 秋期 問99
- 手続calcMod3を呼び出したときの出力はどれか。 〔プログラム〕 ○calcMod3() 整数型: totalVal…2025年度 秋期 問78
- 関数binaryToIntegerは、1桁以上の符号なし2進数を文字列で表した値を引数binaryStrで受け取り、その…2024年度 秋期 問85
- 関数convertは、整数型の配列を一定のルールで文字列に変換するプログラムである。関数convertをconvert(…2024年度 秋期 問62
最終更新:2026-08-25/解説・選択肢ごとの解説は資格暗記が独自に作成しています。問題文と選択肢の出典は上記のとおりです。