2011 年度「計算数学」 2011-10-07

§0 はじめに

(0.1) 数物科学類の、主として数学コース2年生を対象とした科目である。 内容は、 C言語によるプログラミングの初歩と、 整列(ソート)のアルゴリズムである。 数学的観点も重視するが、証明は授業中には行なわない。

(0.2) この建物内は禁煙・飲食禁止である。 飲食物を持っているときはカバンにしまえ。

(0.3) この授業は「説明」と「実習」からなっている。 説明のときはプリントを見ながら静かに私の話を聞け。 それが終わって実習が始まったら、 諸君の間で自由に相談などをしてよい。歩き回ってもよい。 そのときには私は諸君の間を回って質問を受けるので、 通路はなるべく空けておけ。

(0.4) 単位の認定は、出席と課題の提出状況で行なう。 課題は、出しただけではだめで、「OK」と認められなければならない。 決してむずかしくはない。

(0.5) プリントと全く同じものが、 学内からだけ見える(いわゆる)ホームページとしておいてある。 (URL は §6.2 を見よ。授業期間終了後はインターネットで公開する予定である。)

(0.6) 教科書は用いないが、 カーニハン/リッチー著・石田晴久訳「プログラミング言語C第2版」 (共立出版)が参考書である。 授業中でなく、あとで読むのでも参考になる。

(0.7) 上の階の自習室は自習に使える。 使える時間帯はそこの入り口付近に書いてある。 自習の際には絶対に私語はせず、ひとりひとりでコンピュータを操作せよ。 友だちと相談しないと使えないレベルの人は自習室は使うな。 あいさつは声に出さず、動作だけで行なえ。

(0.8) 担当教員の研究室は理学部数学管理棟 383 号室である。

§1 アカウントについて

(1.1) センターのアカウントには、 「コンテンツ ID」と「ネットワーク ID」の二種類がある。 この授業では前者を配布し、それを「この授業のアカウント」と呼ぶ。 後者は、学生証を用いてセンターのロビーなどで自分で取得するものだが、 なくてもこの授業にはさしつかえない。

(1.2) 数物科学類2年生は、 学籍番号の末尾二ケタがユーザ ID の下二ケタになる。 「アカウント受領証」の z11ec0 の右には、その下二ケタを記入せよ。 それ以外の人は、配布時にユーザ ID を決定するので、 そこは空けておけ。

(1.3) パスワードは、ほかの人に知られないように保管せよ。 貸し借りなどは厳禁である。

(1.4) アカウント名は公開だが、 必要がなければほかの人には教えないように。

(1.5) アカウントの有効期限は来年の三月末日までである。

§2 電源の入れ方・切り方、ログイン・ログアウト




【電源オフ】 本体(机の下)の電源ランプがついていなければこの状態。 本体の電源スイッチを入れれば次へ進む。 (電源ランプはついているがディスプレイの画面が真っ黒のときは、 ディスプレイのスイッチ(画面右下)がはいっているか確かめよ。 はいっている場合は省エネ状態と思われるので Shift キーを押してみよ。)

【OS選択メニュー】 キーボードの矢印キーでどちらかを選んで Enter キーを押す。 なにもしなければ自動的に Windows に進む。 (部屋によって違うかもしれないので注意。)

【Windows のログイン画面】 Ctrl キーと Alt キーを押したまま Delete キーを押す。

  • 「ユーザー名」にユーザID を、
  • 「パスワード」にパスワードを

打ち込み、「OK」をクリックする。 (パスワードは画面では「*」で表示される。)

(この状態から電源オフの状態にしたいときなどは「シャットダウン」をクリック。 そのあとの操作法は下の枠内の説明を参考にせよ。 また、この授業では行わないが、 ネットワークID で Windows にログインすることも可能である。 その場合は「ログオン先」を「IPE」から「INS」に変更せよ。)

途中、「Input "1" or "2"」では、 コンテンツID でログインするのでキーボード左上の「1」を打って Enter キーを押す。 (ネットワークID でログインするなら「1」の代わりに「2」を打つ。 何もしなければ、60 秒後、自動的に、直前に起動したほうへ進む。)

【Linux のログイン画面】

  1. 「ユーザ名」にユーザ ID を打ち込んで Enter キーを押し、
  2. 「パスワード」にパスワードを打ち込んで Enter キーを押す。 (パスワードは画面では「*」で表示される。)

(この状態から電源オフの状態にしたいときなどは「システム」をクリックし、指示に従う。 下の枠内の説明を参考にせよ。 「停止」が「シャットダウン」にあたる。)

【Windows の画面】 アイコンがたくさん出て、マウスカーソル近くの砂時計の絵が消えたらログイン完了。

ここでいろいろな仕事をさせる。

終わる前には自分で起動したアプリケーションをすべて終了させておくこと。

左下の「スタート」をクリックし、出てきた「シャットダウン」をクリックする。 すると「実行する操作を選んでください」が出てくるので青色の帯状の部分かその右の 「▼」をクリックし、出てきた中から次の一つを(クリックして)選び、 「OK」をクリックする。

  • 「……のログオフ」... Windows のログイン画面に戻る。
  • 「シャットダウン」... 電源オフの状態に戻る。
  • 「再起動」... OS選択メニューに至る。

【Linux の画面】 アイコンがいくつか出てきたらログイン完了。

ここでいろいろな仕事をさせる。

終わる前には自分で起動したアプリケーションをすべて終了させておくこと。

左上の「アクション」をクリックし、出てきた「ログアウト」をクリックする。 そして次の一つを(クリックして)選び、それから「OK」をクリックする。

  • 「ログアウト」... Linux のログイン画面に戻る。
  • 「シャットダウン」... 電源オフの状態に戻る。
  • 「コンピュータの再起動」... OS選択メニューに至る。

(2.1) ログイン・ログアウトなどの基本的な操作については上の表を参照のこと。 この授業では Linux を用いる。 Linux は、unix とほぼ同じだと思って使うことが可能な OS である。

(2.2) 次の注意を守れ。

  1. 絶対に電源スイッチで電源を切ってはならない。
  2. 電源を切ったら数秒間は電源を入れてはならない。
  3. 部屋を去るときは原則として電源は切る。

(2.3) 自習中にどうしても電源が切れなくなった場合は、 この建物の事務室へ行って助けを求めること。 絶対に電源ボタンで電源を切ってはいけない。

§3 GNOME パネル

(3.1) 画面の上の端にある横に細長い棒は「GNOME パネル」という(らしい)。 この棒の上には、アイコンをドラッグしてくることができる(ようだがその機能は使わなくてもよい)。

§4 基本的なウィンドウ操作

(4.1) ウィンドウの最小化、最大化、 ウィンドウを閉じること、移動、大きさの変更、 アクティブなウィンドウの切り替え、 ウィンドウ内でのスクロール、 はほとんどすべて Windows からの類推でわかると思うので説明は省略する。

§5 ファイル管理ソフト Nautilus

(5.1) デスクトップ左上の「〜のホーム」をダブルクリックして起動。 自分のファイル一覧が見える。

(5.2) ほかの人のファイルでも、許可のあるものは見ることができる。 それには、まず「上へ」をクリック。全員のホームが、フォルダとして並んでいる。 あとは、下の (6.2) を参考に、各自で考えよ。 なお、元に戻れなくなってしまったら「ホーム」を押せ。 (終了してやり直してもよい。)

§6 ブラウザ

(6.1) (いわゆる)ホームページを見るためのブラウザの起動は GNOME パネル (§3) から 「アプリケーション」→「インターネット」→「Firefoxコミュニティエディション」 である。

(6.2) 【必須の作業】 この授業の(いわゆる)ホームページを見よう。 まず、Firefox を起動する。それから、 §5、特に (5.2) で述べたようにして、全員のホームが並んだ画面を出す。 一番最後の z11ect01 をダブルクリックすると、担当教員のファイルが見える。 その中の 0.html をダブルクリックすると、Firefox が起動する。 その画面の中の『「2011 年度「計算数学」』をクリック。 出てきたページをブックマークに追加せよ。 URL は http://wwwedu.ipe.kanazawa-u.ac.jp/~z11ect01/ である。

(6.3) 【必須の作業】 また 0.html に戻り、 「認証のページ」をクリックして、出てきたページをブックマークに追加せよ。 このページ http://www.imc.kanazawa-u.ac.jp/kains-i/ は、この授業では必須ではないが、 インターネットで学外のページを見るための認証を受けるためのページである。

§7 (いわゆる)日本語入力

(7.1) (いわゆる)日本語入力の On/Off は Shift+Space または「半角/全角 漢字」または「変換」。 ただし、性能がよくないので、 後述のテキストエディタ emacs の(いわゆる)日本語入力を用いたほうがよい。

§8 ターミナルの使い方

(8.1) GNOME パネル (§3) の左上の、テレビの受像機のようなアイコンをクリックすると 「GNOME 端末」と書かれたウィンドウが出る。 「端末」は terminal の訳語。以下では「ターミナル」と呼ぶ。

(8.2) 中に [z11ec0??@ipe???? ~]$ (「?」は実際には数字)のような「プロンプト」が出ている。 z11ec0?? は自分のユーザ ID, ipe???? はマシン名である。

(8.3) 文字の大きさは「表示」の中の「拡大」(あるいは「縮小」、および「通常サイズ」)で変えられる。

(8.4) ここに unix (Linux) への命令を打ち込み、仕事をさせる。 一つの仕事が終わるとまたプロンプトが出る。 以後、何も断らずに「〜とする」「〜を実行する」とあったら、 ターミナルの中で、プロンプトのあとに打ち込むことを意味する。

(8.5) 例:「date」「cal」をそれぞれ試せ。 date とキーを打ったあと Enter キーを押すことに注意。

(8.6) ターミナルを閉じるには、プロンプトが出ているところで Ctrl+D を押す。 (文字(スペースを含む)が入力された状態で Ctrl+D を押すとほかのことが起こり、ターミナルは閉じない。 このときは Ctrl+C を押してから Ctrl+D を押してみよ。)

§9 テキストエディタ emacs

(9.1) この授業では、unix の標準的テキストエディタの一つである emacs を使う。 emacs にはそれ専用の(いわゆる)日本語入力の機能が用意されている。 (emacs の中では、Linux の(いわゆる)日本語入力機能は使えない。)

(9.2)【設定】 次の三つの設定ファイルをダウンロードし、保存せよ。(やり方はすぐ下。)

センターの Linux の Firefox でダウンロードして保存する方法は、次の通り。

  1. リンクになっている部分(下線部)を右クリック、
  2. 「名前を付けてリンク先を保存」、
  3. 「保存」をクリック、
  4. ダウンロードマネージャのウィンドウを閉じる。

※ これらのファイルは、いろいろな方からいただいたものを元にしています。 それらの方々に感謝します。

(9.3)【起動】emacs filename」として起動する。 filename は実際には編集したいファイル名である。 ファイル名なしで「emacs」として起動してしまったら、 あとで述べるようにして終了してからやり直し。

(9.4)【操作法】 emacs には極めて多くのコマンドがあるので、 うっかり打ち間違えて予期せぬ動きが始まることがあるが、 Ctrl+G で中断できるかもしれないので試すこと。 それでだめなら emacs を終了する。

(9.5)【練習】 Ctrl+H を二度打つと、下半分に Help が出るはずだ。 ここで Ctrl+G を打ってみよ。

(9.6) 四つの矢印キーでカーソルが動かせる。 マウスでクリックすることでもカーソルを動かせる。 左端のスクロールバーで表示範囲を変えられる。 キーを打てばその文字がカーソル位置にはいる。 Enter を打てばそこで改行。 BackSpace キー、 Delete キーで文字を削除。 行末には、見えないが「改行」という文字がはいっている。 それを削除すれば二つの行が合併されて一つになる。

(9.7)【日本語入力】 Ctrl+\ で、 アルファベット入力モードと(いわゆる)日本語入力モードとが交互に切り換わる。 いまどちらにいるのかは画面左下を見ればわかる。 (\ の代わりに「」と書かれたキーを押してもよい。)

(9.8) 日本語入力モードではローマ字で読みを入力するとひらがなで表示される。 たとえば「tegami」と打つと「てがみ」のようになる。 下線は、その間の文字が未確定であることを示している。 求める文字が出るまでスペースバーを打って変換し、 次の文字を入力すれば確定する。 (この操作ではほかに矢印キーを使う局面もある。 適当に試して覚えること。)

(9.9) たとえば「たなかみさこ」を変換して「田中美佐子」にしようとしてスペースバーを押すと 「他中味さこ」となるので、 Ctrl+I で切れ目を左に移動し「田中みさこ」とする。 次に Ctrl+F を押すと「田中」が確定され、 「みさこ」は変換されて「美佐子」となる。 この操作の際に「→」キーを押してはいけない。 切れ目を右に移動するのは Ctrl+O である。

(9.10) ひらがなで入力した直後に Shift+K を押すとカタカナになる。 あと、Ctrl+N で次候補、Ctrl+P で前候補、も覚えておくと便利かも。

(9.11)【注意】 emacs では、 一行が画面上の複数行に渡る場合は画面外に曲がった矢印が表示される。 (そのように長い行は、 特に理由がなければ、短く切り分けるべきである。)

(9.12)【練習】 これを試せ。 文字キーは押しっぱなしにすればその文字がくり返し入力される。

(9.13)【終了】 emacs を終了するには、 未確定文字のない状態で Ctrl+X Ctrl+C を順に押す。

(9.14) 「Save file ... filename?」と聞いてきたら、 セーブする場合は「y」、しない場合は「n」を押す。 「n」を押すと「Modified buffers exist; exit anyway? (yes or no) 」 と確認してくるので、本当に保存しないで終了するなら 「y」ではなく「yes」と答える。 保存しないで終了した場合は、 #filename# のように元のファイル名の前後に # をつけた名前のファイルが作られる。

(9.15) あるいは、emacs のウィンドウの「File」をクリック。 出てきたメニューの一番下の「Exit Emacs」をクリックし、 あとは上の例にならって質問に答える。

(9.16) (保存しないで終わる場合、「Ctrl-X に続いて k」あるいは 「File」「Close (current buffer)」としてから終了するほうが、 上述の #filename# という名前のファイルが作られないのですっきりする。)

(9.17)【練習】 適当な名前で、適当な内容のファイルを作れ。 また、それらのファイルを使って、Nautilus (§5) の練習をせよ。

(9.18) .emacs-faces.el という名前のファイルを編集すると、 emacs の画面の色などを変更することができる。 やってみたい人は申し出ること。変更箇所を教える。

§10 テキストの範囲指定と移動・コピー

(10.1) 「情報処理基礎」で学んだ Windows の場合と同様なので説明は省略する。

(10.2) ただし、「貼り付け」がうまくゆかない場合があるようだ。 そのときは、 「貼り付け」の代わりにマウスの左右のボタンの間にある黒いホイールのようなものを押してみよ。

§11 Active! mail で電子メール

(11.1) 「情報処理基礎」で使った Active! mail はブラウザの中でメール送受信を行なうので、 Linux でも Windows でも使える。これを使う。 ただし、バージョンが新しいものになっている。

(11.2) https://email.kanazawa-u.ac.jp/ がセンターの Active! mail のページである。 ここにアクセスすると、 自動的に https://email.kanazawa-u.ac.jp/am_bin/amlogin へ飛ぶ。 このページへも、(6.2), (6.3) のようにしてゆける。 ブックマークに追加せよ。

(11.3) よく理屈を理解している人を除いては、 一つのアカウント宛てのメールの読み書きは一つのメールソフトで行なうように。 そうでないと、いろいろなところに受信メールが分散してしまう。

(11.4) この授業のアカウントに付随したメールアドレスは z11ec0??@mailedu.ipe.kanazawa-u.ac.jp である。この授業のレポート提出には必ずこのアドレスを用いよ。 (実際には「?」は数字。)

(11.5) 「セキュリティの警告」がときどき出るが、ざっと読んで「OK」を押す。

(11.6) 「ユーザID」「パスワード」はこの授業で配ったものを入力。 「ユーザID」の右の「@stu.kanazawa-u.ac.jp」 となっているところは、クリックして 「@mailedu.ipe.kanazawa-u.ac.jp」に変更。 「言語選択」は「自動選択」のまま。 「ユーザID/パスワードを記録する」にはチェックを入れない。 「ログイン」を押してログインする。

(11.7) 画面上に「メールホーム」「メール受信」「メール作成」 「アドレス帳」「スケジューラ」「ツール」と出ており、 その右には「ログアウト」のボタンがある。 なお、Active! mail を使っている間は、 ブラウザの「戻る」ボタン、「最新の情報に更新」ボタンは押さないこと。

(11.8) 【最初に一度だけ行なう設定】 「ツール」をクリック。「プロフィール管理」をクリック。 「新規作成」をクリック。 「プロフィール名」には「普通」と打ち込む。 その右の「標準にする」にチェックをつける。 「名前」には、自分の氏名を、大学に届けてあるとおりの文字で打ち込む。 ここでの(いわゆる)日本語入力のやり方は §7 を参照。 あるいは、emacs の中からコピーしてもよいし、 アカンサスポータルからコピーしてもよい。 氏と名の間は「空けない」「半角スペース一つだけ空ける」 「全角スペース(「 」をコピーせよ)一つだけ空ける」のどれでもよい。 「返信先(Reply-to)」の右に「メールアドレスを入力」とあるが、 ここはそのまま。 「OK」をクリック。 (「ツール」→「一般設定」の中でカラーが選べる。 変えたい人は変えてよい。 発信されるメールには全く関係しない。)

(11.9) 【アドレス帳への登録】 「アドレス帳」をクリック。 「新規登録」をクリック。 「名前」「ふりがな」「メールアドレス」だけを記入する。 自分と、担当教員のアドレスを登録せよ。 (担当教員の名前は「岩瀬順一」、ふりがなは「いわせじゅんいち」、 メールアドレスは 「z11ect01@mailedu.ipe.kanazawa-u.ac.jp」である。 画面からコピーすれば簡単だし、間違う心配がない。 「様」や「先生」はつけないこと。)

(11.10) 【メールを送る】 「メール作成」をクリックすると別にウィンドウが開く。 「宛先」「Cc」は「アドレス帳」を使うとよい。 「アドレス帳」のボタンを押したあとの操作はわかると思うので省略。 「件名」「本文」を指示されたように記入したのち、 「送信」を押す。

(11.11) 【メールを読む】 「メール受信」をクリックすればそこに見えている。

(11.12) 【メールを返信する】 メールを表示させた状態で「返信」をクリック。

(11.13) 【メールの自動転送】 ついたメールがほかのメールアドレスに自動的に転送されるよう設定することができる。 これを利用して携帯電話のメールアドレスにも転送されるようにしておくと、 レポートの採点結果が返ってきたときすぐに気づくので便利かもしれない。 それには、まず、 touch forward とする。 これで、forward という名前のファイルができたはずだ。 次に chmod 600 forward とする。 これで、そのファイルの中味は他人からは読めなくなったはずだ。 友だちに見ようとしてもらうのもよいだろう。 それから emacs forward として、 このファイルに次のように書き込む。

z11ec0??
"xxx..xxx_xxxxxxx_xxx"@xxxxxx.ne.jp

一行めは自分の ID そのもの、 二行目は、転送したい先の、携帯電話などのアドレスである。 なお、携帯電話のアドレスの中には「@」よりも前の部分を 二重引用符「"」で囲まないと うまくゆかない場合がある。 このあと、mv -i forward .forward とする。 (こうすると、ファイル名が .forward に変わり、 Nautilus に表示されなくなる。)

いかなる場合でも、この設定をしたら、 自分自身にテストメールを送ってみるべきである。 携帯電話などにも届き、かつ、Active! mail でも読めれば、成功である。 一度試してうまく行かないときは、 次からは emacs .forward として直してみる。

(11.14) 【終わり方】 右上の「ログアウト」をクリックする。

(11.15) 【練習】 設定を済ませたのち、 自分のアドレス((11.4) で述べたもの)にメールを送ってみよ。 それを受信し、それに返信してみよ。それを受信してみよ。

(11.16) 【きょう、この時間内にすべきこと】 担当教員にメールを送れ。 件名は「test」(←全て半角文字、小文字)とせよ。 本文は学籍番号、名列番号、氏名(として大学に届けてあるもの)だけでよい。 課題ではないので点数にはならない。 メール設定を正しく行なったかどうかの確認である。 一週間以内に、受け取ったメールには返信を、 メールを送らなかったと思われる人には催促のメールを、 送る予定である。 設定が間違っているとの返信を受け取った場合には、 次回のこの授業の時間内に直せばよい。


岩瀬順一