トレース表の作り方を理解する
トレース表は疑似言語を手作業で実行するための表である。行番号、条件結果、変数値、配列の変更点を必要な粒度で記録する。
この単元で学ぶこと
- 行番号列の意味と役割を説明できる
- 条件列の意味と役割を説明できる
- 変数列の意味と役割を説明できる
- 疑似言語に合わせて必要な列を選び、行ごとの状態変化を正確に記録できる
本文解説
全変数を毎行書く必要はないが、制御フローや答えに影響する状態は残す。条件行はT/Fを記録し、代入行は更新後の値を書く。
行番号列 どの文を実行したかを記録する列。 PCの役割。
条件列 if/whileの真偽を記録する列。 分岐根拠を残す。
変数列 値が更新・参照される重要変数を記録する。 更新後の現在値を書く。
配列列 変更された要素や参照位置を必要に応じて記録する。 全配列を書き直すか差分で記録する。
出力列 printやreturnなど問題で問われる結果を記録する。 順序問題で有効。
問題で問われる値から逆算して列を作り、条件行と更新行を必ず残す。
iとsumを問うループなら、行番号・条件T/F・i・sumの4列で十分なことが多い。
図解
重要ポイント
- 行番号列: どの文を実行したかを記録する列。
- 条件列: if/whileの真偽を記録する列。
- 変数列: 値が更新・参照される重要変数を記録する。
- 配列列: 変更された要素や参照位置を必要に応じて記録する。
- トレース表は「全部書く」ためではなく「必要な状態を見失わない」ために作る。
間違えやすい点
- 条件列を省略しない。
- 更新前/更新後を混在させない。
- 不要変数を増やし過ぎて表を読みづらくしない。
用語解説
- 行番号列
- どの文を実行したかを記録する列。
- 条件列
- if/whileの真偽を記録する列。
- 変数列
- 値が更新・参照される重要変数を記録する。
- 配列列
- 変更された要素や参照位置を必要に応じて記録する。
- 出力列
- printやreturnなど問題で問われる結果を記録する。
関連教材
参考資料
教材データに登録された参考リンクです。リンク先の内容や更新日は提供元でご確認ください。
確認問題の出題・採点や学習履歴の保存にはログインが必要です。