(2015) - Â裱²ó ¡Ý¹ÖµÁ³µÍס¦Á°´ü¤ÎÉü½¬¡Ý

.
.
Cプログラミング (2015)
第1回
−講義概要・前期の復習−
松田七美男
2015 年 9 月 24 日
講義概要
.
.
Cプログラミング入門に引き続き
講義概要
.
.
Cプログラミング入門に引き続き
オペレーティングシステム (OS)
Unix の上で実習
講義概要
.
.
Cプログラミング入門に引き続き
オペレーティングシステム (OS)
Unix の上で実習
à
実践的なプログラミング技術の習得
プログラミングにおける総合的知識・技術の
習得
講義内容予定
1.
ガイダンス,C言語の復習(+プロラミングツール)
2.
C言語の復習:配列とポインタ
3.
連立方程式の解法と行列 (1):Gauss の消去法
4.
連立方程式の解法と行列 (2):LU 分解(+lapack の利用方法)宿題 1
5.
宿題 1 の解説と演習
6.
非線形方程式の数値解法:2 分法とはさみうち法
7.
非線形方程式の数値解法:ニュートン法
8.
常微分方程式の数値解法:オイラー法,ルンゲ・クッタ法
9.
常微分方程式の数値解法:連立および高階常微分方程式
10. アルゴリズムの改善:ソート,多項式の評価 宿題 2
11. 宿題 2 の解説と演習
12. プロットツール gnuplot の紹介と C 言語からの利用
13. 簡単な X11 のグラフィックライブラリ eggx の紹介
14. グラフィックライブラリ eggx によるアニメーション作成
15. ウェブ演習 宿題 3
講義内容予定
1.
ガイダンス,C言語の復習(+プロラミングツール)
2.
C言語の復習:配列とポインタ
3.
連立方程式の解法と行列 (1):Gauss の消去法
4.
連立方程式の解法と行列 (2):LU 分解(+lapack の利用方法)宿題 1
5.
宿題 1 の解説と演習
6.
非線形方程式の数値解法:2 分法とはさみうち法
7.
非線形方程式の数値解法:ニュートン法
8.
常微分方程式の数値解法:オイラー法,ルンゲ・クッタ法
9.
常微分方程式の数値解法:連立および高階常微分方程式
10. アルゴリズムの改善:ソート,多項式の評価 宿題 2
11. 宿題 2 の解説と演習
12. プロットツール gnuplot の紹介と C 言語からの利用
13. 簡単な X11 のグラフィックライブラリ eggx の紹介
14. グラフィックライブラリ eggx によるアニメーション作成
15. ウェブ演習 宿題 3
.
.進行状況により内容が変更される場合があります
講師・TA の紹介
講師 松田七美男
所属 :東京電機大学工学部
e-mail :[email protected]
url :http://ayapin.lm.s.dendai.ac.jp
TA
.
片江将希,鳥居優作
所属 :早稲田大学理工学院
講師・TA の紹介
講師 松田七美男
所属 :東京電機大学工学部
e-mail :[email protected]
url :http://ayapin.lm.s.dendai.ac.jp
TA
.
片江将希,鳥居優作
所属 :早稲田大学理工学院
出欠の確認方法と成績評価
. 出欠は教室で配られる出席票で行います.
I 10 分以上の遅刻は欠席とみなします.
I 自分の出席状況を Waseda-net ポータルで確認してくだ
1
さい. 異議がある場合は,教務事務担当
([email protected]) にメールで問い合わせてくだ
さい.
出欠の確認方法と成績評価
. 出欠は教室で配られる出席票で行います.
I 10 分以上の遅刻は欠席とみなします.
I 自分の出席状況を Waseda-net ポータルで確認してくだ
1
さい. 異議がある場合は,教務事務担当
([email protected]) にメールで問い合わせてくだ
さい.
. 原則,全体の 2/3 以上(10 回以上)出席すること.
2
出欠の確認方法と成績評価
. 出欠は教室で配られる出席票で行います.
I 10 分以上の遅刻は欠席とみなします.
I 自分の出席状況を Waseda-net ポータルで確認してくだ
1
さい. 異議がある場合は,教務事務担当
([email protected]) にメールで問い合わせてくだ
さい.
. 原則,全体の 2/3 以上(10 回以上)出席すること.
3. 期末テストは実施しません.成績は,以下のように宿題
2
と演習の評点で判定されます.
I
I
宿題 (プログラム演習問題)は 3 回あります.そのうち
1,2 回目を各 20 点,第 3 回目を 40 点満点として評価
します.
講義時間内に解答する課題演習を 2 回行います.それぞ
れ 10 点満点として評価します.
理工
UNIX システムへのログイン方法
.
2012
年度秋学期からの変更点
.
.
MS-Windows/Linux の dual boot
Linux(CentOS 6.3) を選択して起動する.
ログイン後の環境設定
初期画面
端末を
1 つ開いたところ
refox で講義のページを閲覧
文字サイズを小さく( Ctrl
+ - )
gedit
.
gedit の起動: .$ gedit &
gedit
.
gedit の起動: .$ gedit &
ファイルの選択
コンパイルと実行
.
コンパイル
.
.
gcc -o 実行ファイル名 ソース
例:gcc -o hello
-lm
| {z } |{z}
| {z } ex02.c
実行ファイル名
ソース
数学ライブラリ
コンパイルと実行
.
コンパイル
.
.
gcc -o 実行ファイル名 ソース
例:gcc -o hello
-lm
| {z } |{z}
| {z } ex02.c
実行ファイル名
警告オプション:
ソース
数学ライブラリ
-Wall (場所は任意)
例: gcc -Wall -o hello ex02.c -lm
例: gcc -o hello -Wall -lm ex02.c
コンパイルと実行
.
コンパイル
.
gcc -o 実行ファイル名 ソース
例:gcc -o hello
-lm
| {z } |{z}
| {z } ex02.c
実行ファイル名
.
警告オプション:
ソース
数学ライブラリ
-Wall (場所は任意)
例: gcc -Wall -o hello ex02.c -lm
例: gcc -o hello -Wall -lm ex02.c
実行: 実行ファイル名をキー入力する
I
I
例: ./hello
実行ファイルパスの確認(echo $PATH)
ファイルパスを明示的に指定して実行
ソースの整形:indent
ソースの整形:indent
à
indent ex02.c
ソースの整形:indent
à
indent ex02.c
C 言語:キーワード
変数と型
char int double void
条件分岐
if 文 switch∼case 文
繰り返し
while 文 do while 文 for 文
配列
x[N] A[N][M] a[i]=*(a+i) 文字列 ≡char 配列
関数
メイン関数 f( ) 関数へのポインタ (*f)( )
ポインタ
定数ポインタ ポインタ変数 間接演算子
構造体
struct tag {....};
プリプロセッサ,ファイル入出力
C 言語:キーワード
変数と型
char int double void
条件分岐
if 文 switch∼case 文
繰り返し
while 文 do while 文 for 文
配列
x[N] A[N][M] a[i]=*(a+i) 文字列 ≡char 配列
関数
メイン関数 f( ) 関数へのポインタ (*f)( )
ポインタ
定数ポインタ ポインタ変数 間接演算子
構造体
struct tag {....};
プリプロセッサ,ファイル入出力
.
情報 Q&A
.
. コンピュータリテラシー,Cプログラミング入門に関するの相談
. Go
.
分割コンパイル:make
make ユーティリティ
make [ -f makele 名 ] [ ターゲット名 ]
.
.
.
makele 名を指定しないときには,
GNUmakele, makele, Makele の順に
探す
makele の特殊な構文規則:
コマンド行の先頭をタブ文字で始めること
ソースコード管理:di,
patch
ソースコードの差分:di
.
.
.
di [ options ] from-le to-le [ > ***.di ]
オプションは,-u がよく用いられる.
ソースコード管理:di,
patch
ソースコードの差分:di
.
.
.
di [ options ] from-le to-le [ > ***.di ]
オプションは,-u がよく用いられる.
ソースコードの更新:patch
.
.
.
patch foo.c < ***.di
旧ソースコードに戻すこともできる.
Waseda-net portal:メイン画面
Waseda-net portal:メイン画面
.
Waseda-net portal:メイン画面
.
Web メールサービストップ画面
Web メールサービストップ画面
メッセージ作成ボタン
.
メッセージ作成ダイアログ
メッセージ作成ダイアログ
送信メッセージ保存
.