命令網羅・分岐網羅の試験問題への適用

本番では短いコードに対して、どの入力集合で要求網羅を満たすかを問われる。各テストケースで判定結果と実行命令を手で追う。

この単元で学ぶこと

  • 入力別トレースの意味と役割を説明できる
  • 最小集合の意味と役割を説明できる
  • 境界入力の意味と役割を説明できる
  • 短い疑似コードから必要テストケース集合を選べる

本文解説

入力候補ごとにT/F表を作り、必要な組合せを最小限で選ぶ。whileがある場合は反復後のfalse判定まで記録する。

入力別トレース 各入力で通る命令と判定結果を記録する。 感覚で選ばない。

最小集合 要求網羅を満たす最少ケースを探す。 重複ケースを除く。

境界入力 判定境界付近を候補にすると効率的。 true/falseを切替えやすい。

複数判定 各判定ごとにT/Fを確認する。 一つ満たしても他が不足することがある。

ループ 初回判定・反復・終了判定を追う。 最終falseを含める。

入力→各判定T/F→実行命令の表を作る。

if(x>=10)とif(x%2==0)があれば、両判定のT/Fが揃う入力組合せを選ぶ。

図解

網羅表によるケース選定
入力別のT/Fと命令実行を表にして最小集合を選ぶ。

重要ポイント

  • 入力別トレース: 各入力で通る命令と判定結果を記録する。
  • 最小集合: 要求網羅を満たす最少ケースを探す。
  • 境界入力: 判定境界付近を候補にすると効率的。
  • 複数判定: 各判定ごとにT/Fを確認する。
  • 一ケースずつ実行し、網羅表を埋める。

間違えやすい点

  • 一つのifだけ見て選ばない。
  • ループ終了falseを忘れない。
  • 境界の内外を同じ結果と決めつけない。

用語解説

入力別トレース
各入力で通る命令と判定結果を記録する。
最小集合
要求網羅を満たす最少ケースを探す。
境界入力
判定境界付近を候補にすると効率的。
複数判定
各判定ごとにT/Fを確認する。
ループ
初回判定・反復・終了判定を追う。

関連教材

参考資料

教材データに登録された参考リンクです。リンク先の内容や更新日は提供元でご確認ください。

確認問題の出題・採点や学習履歴の保存にはログインが必要です。