Next: この文書について...
課題5の解き方
桂田 祐史
課題5-2の解き方を解説する。
サンプル・プログラム bisection.c, newton.c を入手
1・変更して、自分が望むプログラムに
書き換えるのが簡単である。
-
プログラムを変更する場合、元のプログラムを適当な名前でコピーして、コ
ピーしたファイルの方を変更するのが良い。
-
一般にプログラムを書き直して変更する場合、必ずしも全体を理解する必要
はない。プログラムは、小さな関数の集合体としてできていて、少数の関数を
変更するだけで良い。
例えば
を二分法で計算するプログラムを作るには以下のように
する。(注: これはあくまでも例であって、
計算専用のプ
ログラムなんてあまり誉められたものではない。ユーザーが入力した数 a
の平方根
を計算し、C 言語の sqrt() 関数で計算した値と
比較するようなプログラムにするのが望ましい。課題の文章を読めばそうなっ
ている。)
以下順に説明する。
- 1.
- 最初に cp コマンドで bisection.c を root2b.c にコ
ピーする。(root2b.c という名前は、内容が分かるものならば何でも良
い。)
- 2.
- 次にテキスト・エディター mule を使って、root2b.c を編集
する。プログラムの末尾のあたりに、関数 f() の定義があるので、そ
こを書き直す。具体的には、例えば
を
のようにする。
- 3.
- コンパイルは、cco コマンドがあれば、単に cco Cプログラム
の名前 とするだけで OK.
- 4.
- 実行は、実行可能ファイルの名前 (cco でコンパイルした場合は、
.c を取ったもの) を入力する。
- 5.
- プログラムの使い方は、元の bisection.c と同じだから解説は略す
る。
Newton 法についても同様のことをする。
両者の結果を比較する (「何を比較すればよいのか?」 -- これは配布プ
リントの解説を読んで、自分の頭で考えること)。
Masashi Katsurada
平成10年7月10日