授業概要
|
|
コンピュータプログラミングは,パーソナルコンピュータで動作するソフトウェアのみならず,携帯電話や身の回りの電化製品,自動車などの中にも組込み機器として搭載されており,現代の工業製品の開発には欠くことができない.また,適切に動作するソフトウェアを作成するためには,計算方法や条件判断について,事前に多方面から検討する必要がある.これは,順序立てた論理的な思考を必要とする.
プログラミングの技術のみ注目すれば,Pythonで十分であると思うかもしれない.サンプルも多くすぐに結果をもとめるためにはとてもよい.しかし,それは誰にでもできる.高度な言語の根底には,やはりデータの型やアドレスの理解が重要となる.C言語は,それの理解を深めるにはとてもよい.つまり,受講者には,技術のみならず,考え方を身につけてほしい.
そのため,この授業では,プログラミングの基礎を理解するために,C言語を対象として,プログラムの基礎と開発手順の概要を理解する.そして,プログラミングを通じて論理的な思考を行い,それをコンピュータで実装することで,さまざまな分野での開発者として必要なスキルを身に付ける.
なお,状況によっては,ハイブリッド形式やオンライン形式の授業形態となる.そのため,各自のPCにLinuxの仮想環境を構築し,演習室のPCのみならず自分のPCでもC言語の開発環境を作り,予習と復習に活用すること.
|
|
|
到達すべき 目標
|
|
・C言語によるプログラミングの基礎を理解し,プログラム開発の手順を理解する. ・条件分岐,反復,変数,構造体などのプログラミングに必要な知識を習得する. ・ソースファイル,ヘッダーファイル,ライブラリ,コンパイル,デバッグを理解する. ・簡単な数値計算を行うプログラムの作成を通じ,コンピュータを利用した科学技術計算の基礎を理解する.
|
|
|
授業計画と 準備学習
|
|
毎回資料とプログラムを配布する.
質問の回答:15分 内容の説明:10分 演 習:60分 ま と め: 5分
で行う.プログラミング技術の習得も重要であるが,概念の理解がもっとも必要である. プログラミング技術の習得は,宿題や課題を通じて各自が自主的に行う.授業ではその概念とポイントを伝える.これは,楽器演奏,スポーツのトレーニングと同じである.
教科書は,特に指定しない. 本があったほうが進めやすいと感じる学生は,参考文献の4か1を購入してもよいかもしれない.
ただし,入門書の部類はすぐに役に立たなくなるので,購入はあまりおすすめしない. どんなものでも1冊持ち,それをやり切れば十分である. 文献4,5は図書館で貸し出しもあるので,それでも十分だと思う.
Linux系OSの環境を利用して授業を行う.
授業は以下の構成で行う.多少,内容の入れ替えがある可能性がある. また,必要に応じて,確認テストを行う.
(初心者レベル) 第 1回 開発手順の概要:ソースファイル/コンパイル/デバックの理解 第 2回 条件分岐と反復(if, while, for).基本的なデータ構造/関数化 第 3回 関数とスコープ
(初級レベル) 第 4回 変数・アドレス・配列・ポインタ 第 5回 ポインタ・配列・構造体 第 6回 メモリの動的確保・関数とポインタ 第 7回 関数と変数/配列/ポインタ/構造体の処理/コマンドライン引数
(中級レベル) 第 8回 多次元配列 第 9回 文字列 第10回 構造体 第11回 ライブラリの利用
(実践) 第12回 ファイルの読み書き(テキスト/バイナリ) 第13回 関数ポインタ 第14回 プログラムの統合開発環境/デバッグ
(テスト) 第15回 定期試験
演習室のPCを利用する場合には,自分のPCを持参する必要はない. ただし,自分のPCにLinux環境をインストールして,自分のPCでもプログラム開発が行えるようにすること.Linux環境のインストールは,Virtual Boxなどの仮想環境を使って各自実施すること.希望者には授業外で講習を行う.
|
|
|
授業の特色
|
|
|
|
学生のアク ティブ・ラー ニングを 促す取組
|
|
|
|
使用言語
|
|
|
|
TA,SA配置 予定
|
|
|
|
基盤的能力 専門的能力
|
|
|
|
授業時間外 の学習
|
|
宿題/課題について,毎回,自分で地道に取り組む必要がある. 提出は不要である.回答例は,すべてAIMSで公開するので,自分で確認すること.
授業前に1時間程度,授業後に2時間程度の学習が必要である. 自分のPCでの作業が必要である.
希望者には補習を行う.
|
|
|
成績評価の 方法
|
|
期末試験の得点6割以上を合格とし,受講の積極性および価値のある議論への参加を加味して成績を評価する.
|
|
|
到達度評価 の観点
|
|
|
|
テキスト
|
|
|
|
テキスト (詳細)
|
|
入門書はきっとすぐに不要になるので,教科書は特に指定しない.図書館で以下の本が借りられるので,それで十分である.
新C言語入門(林晴比古著) ビギナー編(図書館本館3階/図書ID130027618) 請求記号:007.64 Hay
|
|
|
参考文献
|
|
| |
No
|
書籍名
|
著者名
|
出版社
|
出版年
|
ISBN/ISSN
|
|
1.
|
『C実践プログラミング 第3版』
|
Steve Oualline
|
オライリー・ジャパン
|
1998
|
4900900648
|
|
2.
|
『C言語による最新アルゴリズム事典』
|
奥村 晴彦
|
技術評論社
|
1991
|
4874084141
|
|
3.
|
『プログラミング言語C 第2版 ANSI規格準拠』
|
B.W. カーニハン, D.M. リッチー
|
共立出版
|
1989
|
4320026926
|
|
4.
|
『新・C言語入門 スーパービギナー編』
|
林 晴比古
|
ソフトバンククリエイティブ
|
2004
|
4797325631
|
|
5.
|
『新・C言語入門 シニア編』
|
林 晴比古
|
ソフトバンククリエイティブ
|
2004
|
4797325623
|
|
|
|
参考文献 (詳細)
|
|
参考図書の1から3はとてもよい.特に,文献2はC言語でいろいろな問題を解く際にはとても参考になる.このようなアルゴリズム辞典を1冊はもっておいたほうがよいと思う.
文献4と5は入門書に関する図書である.図書館にもある.
|
|
|
担当教員実 務経験内容 または実践 的教育内容
|
|
|
|
実践的授業 内容等
|
|
|
|
備考
|
|
自分のPCに仮想環境を構築し,CentOS6か7をインストールするのが望ましい. メモリーが8GB以上搭載されたノートPCがよいと思う. 補習でインストールのセミナーを行う予定である.
【受講者へのメッセージ】講義内容についての質問はメールやTeams等で随時受け付ける.
【オフィスアワー】講義終了後
【連絡先】
[居室]医学部研究棟 8階 8S23室
|
|