2001 年度「計算機基礎論3B」 レポート課題

お願い・追加

下の本文には、もう一切変更を加えない予定です。 追加事項などはここに書きます。

下には 「締め切りは 2002 年 02 月 08 日(金)16 時 30 分とします」 と書きましたが、 同月 10 日(日)でセンターの利用ができなくなるのをすっかり忘れていました。 どうも済みません。 できれば 2002 年 02 月 05 日(火)までに出してください。 よろしくお願いします。

2001 年 12 月 25 日(火)

下にははっきり書きませんでしたが、 a_1, a_2, ... の「値」を出力するだけでなく、 第何項めの値なのかも出力するようにしてください。 (今回は収束するまでループを回すのでほとんど問題ありませんが、 一般には何回ループを回ったかは重大です。)

2002 年 01 月 18 日(金)


Newton 法

y = f(x) が微分可能関数のとき、 方程式 f(x) = 0 の根を計算機で近似的に求める方法のひとつに 「Newton 法」があります。

※ 以下で 「a_n」は「an」を、 「a_{n+1}」は「an+1」を意味する。 また、「x^y」は「xy」のことである。 これらの記法は TeX (「テフ」または「テック」)から借りてきたものだが、 コンピュータで添え字が使えない場合、 または添え字を使うのがめんどうな場合に、 もはや標準的と言っていいほどよく使われる。

曲線 y = f(x) 上の点 (a_n, f(a_n)) におけるこの曲線の接線が x 軸に平行でないと仮定し、 その接線が x 軸と交わる点の x 座標を a_{n+1} とします。 f(x) = 0 の根αに近い数 a_1 から始めて上のようにして数列 a_1, a_2, ..., a_n, ... をつくると、 数列 {a_n} はαに収束します。 この原理で根αを求めるのが Newton 法です。 どのくらい a_1 が根αに「近い」と収束するのか、 の厳密な議論はちょっとおいておいて、 (紙に)グラフを書いてこの感じをつかんでください。

a を正の数とするとき、 x^2 - a = 0 の根を Newton 法で求めれば、 a の平方根が求まったことになります。 下の課題に取り組む前に、小手調べにこれを試すのもいいかもしれません。 この例では、初期値 a_1 はかなりいい加減に選んでも OK なはずです。

レポート課題

三次以上の多項式関数 y = f(x) で、

を一つ選んでください。 その f(x) に対し、 Newton 法で f(x) = 0 の根の一つを求めるCプログラムを書いてください。 以下でもう少しくわしく説明します。

漸化式を求める計算は紙と鉛筆でやってください。 紙はプリンタのそばにたくさん落ちています。 初期値 a_1 は適当に決めてください。 プログラムは a_1, a_2, ... を出力しなければなりません。 何項まで出すかは、実験しながら各自で決めてください。 小数点以下何ケタまで出力するかも、各自の判断にまかせます。 そして、最後の項 a_n に対し f(a_n) がいくつになるかも出力させてください。 プログラムが正しければ、これは 0 に近い値のはずです。

レポートの体裁など

できあがったら、次のような体裁でレポートにし、メールで送ってください。

※ 感想などがあれば添えてもよいが、 無理に書かなくてよろしい。

宛て先は私(岩瀬)の実習用アカウント cf7248 です。 Subject は「report」(すべて小文字)にしてください。 自分の学籍番号、氏名をメールの本文内に書くのを忘れずに。 氏名はフルネームを、大学に届けてある通りに書くこと。

私はメールを受けとったら(大学が休みの日を除いて)数日以内にプログラムを読み、 コンパイルし、 貼り付けてあった実行結果のとおり動くことをチェックして、 「OK」なり「やり直し!」なりの返事をメールで送ります。 「やり直し!」だった人は「OK」 がもらえるまでやり直して再提出しないと課題を提出したことにはなりません。 また、 誰が「OK」で誰が「やり直し!」かは、 数学科の掲示板に掲示します。

※ 期限までに「OK」となればいいのだから、 途中での「やり直し!」はあまり気にしないこと。

締め切りは 2002 年 02 月 08 日(金)16 時 30 分とします。 これは、 その日時までに私にメールを送るように、 という意味です。 締め切り間際にメールを送ってくれた場合は私からの返事は締め切り後になるかもしれません。

※ それで「やり直し!」だとまずいので、できれば早めに提出するように!

付:ファイルの印刷

自習時間にレポート課題に取り組む場合、 実習室内で声を出して相談してはいけない。 相談にはロビーなどを利用せよ。 プログラムなどを見ながら議論したければ、 必要に応じて印刷すること。

ファイルマネージャで、 印刷したいファイルをクリックして網がけにし、 それから「ファイル」「印刷」とすればよい。 三十秒もかからずにプリンタから出てくるはずである。

ムダな印刷は避けるように。


岩瀬順一