2007 年度「計算数学1」
前期木曜4限(14 時 45 分から 16 時 15 分まで)です。
内容は先学期の「計算機基礎論3B」の続きです。
そのため、セクションや課題の番号は前からの続きになっています。
注意:
この授業で使うメールアドレスは学外へは公開されていないため、
学外からはメールを受け取ることができません。
学外へのメールも、相手側の設定によっては、
“実在しないアドレスからのメールだから”との理由で受け取ってもらえないことがあります。
(2007-05-18 記)
できるようになったそうです。(2007-07-04 記)
注意:
メール転送を設定すると、その転送先アドレスは全利用者から見えます。
すでに設定された方については、
先ほど、私がパスワードの控えを利用してログインし、
本人以外には見えないように変更しておきました。
これから設定する人は、私に相談してください。
(2007-05-18 記)
- 2007 年 04 月 12 日(木曜日) (1) ソートとは (§35-38)
- emacs の設定がプリントどおりにゆかなかったのは、
みなさんのアカウントと私のアカウントとで、センターが設定した shell が異なっていたためでした。
- emacs の初期設定は「cp -p ~z07eat01/emacs/.em* .」としてください。
- emacs の色を変えたいときは emacs で「.emacs-faces.el」という名前のファイルを編集し、
「標準の背景色」「標準の文字色」の行の二重引用符の中を変えてください。
いくつかの色名(英語)はそのまま書けます。
#333366 のように # に続く十六進数字6けたで色を指定する方法もあります。
はじめの2けたが R(赤)、次の2けたが G(緑)、最後の2けたが B(青)です。
わからなくなってしまったら、前項の初期設定をして元に戻すとよいでしょう。
- 2007 年 04 月 19 日(木曜日) (2) (プリントなし)
- しかし、次回のプリントの冒頭部分だけはすでにできていますのでよろしければどうぞ。
- 2007 年 04 月 26 日(木曜日) (3) 素朴なソート (§39-46)
[課題3]
- (44.1) の 3 のプログラム断片に
printf("%d 回交換しました.\n", ccount); とあるのは
「比較しました」の間違いでした。(2007-05-11 記)
- (たとえば)N の値を 10000 にして実験すると比較・交換回数は約 2500 万になります。
電卓によってはけた数が多すぎて平均が計算できないかも知れません。
そのときは、回数から 2000 万を引いたものの平均を求めて 2000 万を足す、
などの方法をとってください。(2007-05-12 記)
- 探していた電卓機能ですが、
emacs についていました! ESC キーを押したあと
x を押すと下部に「M-x 」と出ますので、
calc と打って Enter を押します。
あとは各自で考えてください。
計算が終わったら、q で電卓機能をオフにします。(2007-05-12 記)
- 2007 年 05 月 03 日(木曜日) 国民の祝日につき授業なし
- 2007 年 05 月 10 日(木曜日) (4) (続き)(§47-48)
- 2007 年 05 月 17 日(木曜日) (5) (続き)
- 2007 年 05 月 24 日(木曜日) (6) シェルソート (§49-51)
[課題4]
- 2007 年 05 月 31 日(木曜日) (7) (続き)
- 平均を小数点以下第一位まで求めて 12345678 になった場合、
実験レポートとしては 12345678.0 と書くべきです。
高等学校の理科で習った有効数字のことを思い出してください。
- 2007 年 06 月 07 日(木曜日) (8) (続き)
- 課題4が終わってしまった人は、次をやってみてください。
-
「5 おき」「3 おき」「1 おき」にソートするよう改造し、
(49.8), (49.9) で説明したことを確かめよ。
- 数列 m をほかのもの(たとえば 2 のベキ)に取り換えたら効率はどうなるか。
- 「配列の大きさが△△の場合、Shell ソートなら○○秒だが挿入ソートだと××時間かかる」
というようなデータを実験で求めよ。
- 2007 年 06 月 14 日(木曜日) (9) ヒープソート (§52-54)
[課題5]
- (52.1) は、「小さい順に」と言いながら大きい順に並べていました。
訂正するか、「小さい順に右から」と解釈してください。
- (54.4) のプログラム断片 6 行目に「if else」と書いてしまいましたが、
else if の誤りでした。
- 2007 年 06 月 21 日(木曜日) (10) (続き)
- 2007 年 06 月 28 日(木曜日) (11) マージソート (§55) [オプション項目]
- 2007 年 07 月 05 日(木曜日) (12) 再帰 (§56-57)
- (57.4) の「ハノイの塔」は、
「円盤 1 を 0 から 1 へ移動します.」のように、
移動する円盤の番号も出力されるようにしてみてください。
- 2007 年 07 月 12 日(木曜日) (13) クイックソート
[課題6]
- 2007 年 07 月 19 日(木曜日) (14) (続き)
- 2007 年 07 月 26 日(木曜日) (15) (予定の箇所まで進んだため授業なし)
Windows 上のエディタの利用
Linux 上の(いわゆる)日本語入力が貧弱で使い物にならないという場合、
Windows 上のエディタを利用する方法が考えられます。
Linux で見るとホームのすぐ下にあるフォルダ .windows が、
Windows にログインした場合の Z ドライブに当たります。
理屈を(ある程度)よくわかっていれば、
実習室で二つのパソコンを起動し、
一つのアカウントで Windows と Linux の両方にログインしてファイル操作をしても構いません。
(ただし、実習室が混み合っていて空いている席が少ないときにはやめましょう。
また、二つの Linux マシンに同時にログインすることは危険です。)
準備
Linux 側でフォルダ .windows が Nautilus に表示されるようにしましょう。
それには、「〜のホーム」をダブルクリックしてファイル一覧を出したのち、
[編集」「設定」。
「隠しファイルとバックアップ・ファイルを表示する」の前に「×」をつけ、
「閉じる」。
(こうすると、ピリオドで始まる名前を持つファイルやフォルダが表示されるようになりますが、
それらはプログラムが自動的に作ったものがほとんどなので、
間違って削除したり改変したりしないようにしましょう。)
操作
Windows 側では「マイ コンピュータ」の中の「ネットワーク ドライブ」をダブルクリックして
Z ドライブを表示させます。
ここに(たとえば)a.txt というテキストファイルを作り、
「メモ帳」などのテキストエディタで書き込みます。
Linux の側ではフォルダ .windows のアイコンをダブルクリックして、
その中にあるフォルダとファイルを表示させます。ここで
a.txt のアイコンをダブルクリックさせて内容を表示させると、
文字化けして読めません。
そうではなく、
このアイコンをブラウザの中にドラッグ & ドロップしてください。
あとは
- Windows の側でファイルに書き足し、「上書き保存」、
- Linux の側でブラウザの「再読み込み」ボタンを押す、
- そこからメール作成画面にコピー、
です。
掲示の写し
2007 年 四月 16 日(月曜日)
昨年度の実習用アカウントが暫定的に使えます
三月半ばで廃止になったはずなのですが、暫定的に使えるようです。
いつ廃止されるかわかりません。保存し忘れたファイルがある人はいますぐ取り出してください。
やり方のわからない人はセンターで聞いてください。
岩瀬順一
おまけ --- 幻の Windows 版プリント
emacs のフォントを大きくする方法がわからなかったので、
Windows で授業を行おうと考え用意しかかったもの。
未完成のため、昨年度の Linux 用の記述も一部に残っている。
岩瀬順一