注意:講義の諸情報は 大阪大学CLE に掲載するので,毎週確認してください.
注意:この講義の前半ではC言語を扱い,後半ではJuliaまたはOctaveを扱います.
注意:教育用計算機を利用して講義を行う予定でしたが,しばらくの間,オンラインで講義を行う可能性が高いので,自宅のラップトップなどでプログラミングを行える環境を整えることを強く推奨します.
サイバーメディアセンターのウェブページに利用方法の説明が書かれています.「キャンパスクラウドエージェント」と「VMWare Horizon View Client」のインストール・利用方法が説明されていますが,必須なのは後者です(項目2, 4).キャンパスクラウドエージェントを(エラーなどで)インストールできなくても問題ありません.
なお,Desktopに置かれたファイルはログオフ時に消去されるため,教育用計算機を利用する場合,プログラムはDesktopのDocumentsというフォルダに置いて作業すると良いでしょう.
例えばDocumentsの中にExpMath1というフォルダを作り,その中にa1-1.cを置いたとき,cygwinでのフォルダの移動操作は次のとおりです.
$ cd Z:ExpMath1/
さらにフォルダを細かく整理している場合,例えばExpMath1の中にa1というフォルダがある場合は,
$ cd a1
とします.フォルダの中身を確認する場合は
$ ls
一つ上の階層に戻りたいときは
$ cd ..
とします.
ただし,この利用方法の場合
といった理由から,自分のパソコンに環境構築することを推奨します.
Windows:大学のPCと同じような環境を整えたい場合,Cygwin をインストール.gccというパッケージを忘れずにインストールすること.インストール後,Cygwinを立ち上げて gcc -v としてエラーがでなければOKです.
Mac: App Store から Xcode をインストール.インストール後,ターミナルを立ち上げて gcc -v としてエラーがでなければOKです.homebrewなどからgccをインストールしてもよいです.
homebrewについて補足:パッケージマネージャーとして homebrew (パッケージマネージャー(他にも Macports や Fink などがあります)は便利なので,使っていない人は導入するとよいでしょう.
大学のアカウント and/or 個人のPCに「ExpMath1」といった名前のフォルダを作成します.
適当なエディタをダウンロードします
エディタを立ち上げて,以下のプログラムを書き,適当な名前(例えば「hello.c」)をつけて保存します.
注意:拡張子は「txt」などではなく「c」とすること
#include <stdio.h>
int main()
{
printf("Hello World!\n");
return 0;
}
仮に,hello.c が Documents の ExpMath1 というフォルダの中にあるとします(教育用計算機の場合).
Cygwinを起動し,cdコマンドで作業ディレクトリを移動
$ cd Z:ExpMath1/
gccコマンドで,hello.cをコンパイル
$ gcc hello.c
コンパイルが成功すると,実行ファイル「a.exe」が作成されるので,lsコマンドで確認してください.
$ ls
a.exe hello.c
このように2つのファイルが表示されればOKです(同じフォルダに他のファイルがあれば,それらも全て表示されます).
プログラムを実行
$ ./a
Hello World!
「Hello World!」が表示されれば成功です.
仮に,hello.c が Desktop の ExpMath1 というフォルダの中にあるとします.
ターミナルを起動し,cdコマンドで作業ディレクトリを異動
$ cd ~/Desktop/ExpMath1
gccコマンドで,hello.cをコンパイル
$ gcc hello.c
コンパイルが成功すると,実行ファイル「a.out」が作成されます.lsコマンドで確認してみると
$ ls
a.out hello.c
と二つのファイルが表示されるはずです(同じフォルダに他のファイルがあれば,それらも全て表示されます).
プログラムを実行
$ ./a.out
Hello World!
「Hello World!」が表示されれば成功です.
JuliaのウェブページからDownloadへと進み,それぞれの環境にあったものをインストールします.Macの場合は,
$ brew cask install julia
のようにインストールすることもできます.
GNU OctaveのウェブページからDownloadと進み,それぞれの環境にあったものをインストールします.
gnuplotは2次元や3次元のグラフを生成するためのソフトウェアです.
注意:JuliaやOctaveではグラフを描くことができますが,C言語ではそれができません.この講義の後半ではJuliaまたはOctaveを扱いますが,C言語を使い続けても問題ありません.ただし,その場合はグラフを描くためには別のソフトウェアが必要で,例えばgnuplotを使うのがよいでしょう.(講義の内容にあわせてJuliaあるいはOctaveを扱いたい学生は,必ずしもインストールする必要はありません)
gnuplotのウェブページ からgnuplotをダウンロードし,インストールします(cygwinをfullでインストールしていれば,その中にgnuplotも含まれているらしいけれど,(windowsのPCを持っていないため)自分では確認できていません).
インストールできたら,\( \sin(x) \) のグラフなどを描いてみるとよいでしょう.
$ plot sin(x)
$ brew install gnuplot
でインストールできます. ただし,これだと図を描いたときに表示ウィンドウが開かなかったり色々不便なので,AquaTerm や XQuarts などをインストールしたうえで,
$ brew install gnuplot --with-aquaterm
や
$ brew install gnuplot --with-x11
というふうにインストールすると便利です.
インストールできたら,\( \sin(x) \) のグラフなどを描いてみるとよいでしょう.
$ plot sin(x)
(これは必須ではありませんが)多くの数学者は Word ではなく LaTeX を使って論文を書いています.授業のレポートなどで少しずつ慣れていくとよいと思います.
インストール方法については
などが参考になります.
便利なエディタも たくさん あるので,いろいろ試してみて使いやすいものを見つければよいでしょう.