HOME»基本情報技術者試験掲示板»アルゴリズム問題のトレース
投稿する
アルゴリズム問題のトレース [1751]
今から勉強するんださん(No.1)
午後問8のアルゴリズムの疑似言語のトレースの書き方で行き詰まっています。
トレースをするときは、引数と変数を書きだし、ループ処理を中心になるべくシンプルに書き出そうとしているのですが、複雑なプログラムになると途中でこんがらがり、わけがわからなくなります。
例えば、
ループAの入れ子で
ループBがあり
ifで変数が計算される
ループC
ループD
というような処理で、配列が2次元になったりしたときには、そもそもトレースに何の変数を書き出せば良いのかわからなくなります。
トレースの内容を上手く書き出すコツは無いでしょうか。
トレースをするときは、引数と変数を書きだし、ループ処理を中心になるべくシンプルに書き出そうとしているのですが、複雑なプログラムになると途中でこんがらがり、わけがわからなくなります。
例えば、
ループAの入れ子で
ループBがあり
ifで変数が計算される
ループC
ループD
というような処理で、配列が2次元になったりしたときには、そもそもトレースに何の変数を書き出せば良いのかわからなくなります。
トレースの内容を上手く書き出すコツは無いでしょうか。
2019.04.19 17:52
トミーさん(No.2)
基本は表をつくることですね。
行の項目に変数名(プログラムを上から順にたどって順番に出てくる変数名、IF文内ででる変数も)、列項目に1回目、2回目・・・と表記します。
そうすることで直前の変数名の値、前のループではIF文の分岐でどちらに分岐したかもわかりやすいとおもいます。
行の項目に変数名(プログラムを上から順にたどって順番に出てくる変数名、IF文内ででる変数も)、列項目に1回目、2回目・・・と表記します。
そうすることで直前の変数名の値、前のループではIF文の分岐でどちらに分岐したかもわかりやすいとおもいます。
2019.04.19 21:06
明日さん(No.3)
表を作って変数一覧を書き出すことですかね。
長いプログラムであれば、なかなか難しいので、必要な部分を抜き出して、、、かな
長いプログラムであれば、なかなか難しいので、必要な部分を抜き出して、、、かな
2019.04.20 10:57