◎第1回 導入

下へ一覧へ

はじめに

○この授業の目的 ・プログラム言語を学ぶのではない ・問題を整理してアルゴリズムを作成する方法を学ぶ ・C 言語による簡単なプログラムを作成する方法を学ぶ (・さらに課題の報告を通して技術文書の書き方を学ぶ)
○テキスト ・阿部 圭一 著: 「ソフトウェア入門 第 2版」 (共立出版) ・PADという図とプログラミング言語を用いたプログラムの作り方 についての入門書
○進め方 ・基本的にはテキストに沿って進める。 ・毎回、短い講義とそれに即した演習を行なう。 さらに、課題を出すので、原則として次の回までに提出する。 課題は、読みやすいように形式を整えたレポートに まとめて提出する。 ・PAD図 や「擬似コード」を用いて、アルゴリズムを学び、 徐々に、そのアルゴリズムにもとづきプログラムを作っていく。
下へ上へ ○その他 ・講義の説明内容は、WWW で見ることができる。 ・テキストでは、Pascal という言語について、説明してあるが、 この演習では C言語 を用いる。 アルゴリズムを考える点で両者に大きな違いはない。 (参考 「 Pascal と C」「テキストの実例」 ) ・PAD図をコンピュータ上で作成する方法を用意する。
○「コンピュータリテラシー」から「基礎プログラミング及び演習」へ ・「コンピュータリテラシー」一では主にでき上がったプログラムを使う ユーザとしての使い方を学んだ。 ・「基礎プログラミング及び演習」( 以下 ip )では、より「工学的」になり、 おもに問題解決のプログラムをどうやって作るかの方法論を学ぶ。 ・ 実際にプログラムを作るより、 問題を整理する、 処理手順(アルゴリズム)を考えること が大事である。
○基本概念用語 テキストの第1章で用語概念の説明があるので通読すること。 概念用語
下へ上へ ○プログラミングとは (テキスト 1.4 p.10) 解決したい問題の分析、検討 ↓ プログラムの仕様の決定:自然言語で記述 ↓ 「アルゴリズム」: プログラミング言語に依存しない ↓ 具体的処理手順の記述 プログラム ↓ 計算機による実行 人間の作業は、 「解決すべき問題を分析し、アルゴリズムを記述する。」 人間が一度に考えられることはそれほど多くないので 一度に少しずつ決めていく。 ○アルゴリズムの表現法(この演習で) 1. 手順表‥‥‥自然言語を使って箇条書きにする 2. PAD(Program Analysis Diagram)‥‥‥手順を視覚的に図示 pad2ps:PADを書くためのプログラム(C言語like) 3. 擬似コード‥‥‥自然言語をコード化(C言語like) 4. C言語プログラム
○演習1 (演習時間中に行なう。) 今回はこれからの演習を進めるための道具となるソフトウェアを 使う練習などを行なう。 1.1 コマンド pad2ps の練習。 pad2ps は、PAD の形を指定するテキストファイルから PAD 図を表示したり印刷したりするための ポストスクリプト(ps)ファイルを作るコマンドである。 作成した ps ファイルは、ghostview コマンドで、画面に表示したり、 lpr で印刷したりできる。 1.2 PAD についてすこし勉強 第2、3回で詳しく勉強する。 【余裕のある人】はここをクリック!
一覧へ上へ ○レポート課題1 ( 次回に紙で提出 ) (解答) ( レポートの書き方(含提出) を参照すること) 1.1 演習1.1 の”電話をかける”のような連続した処理で、”5ステップの 処理”を日常の身近なところから探しなさい。そして、演習で使ったファイル を編集して、その処理の PAD を出力せよ。論理性と若干の ”品”があれば自由に定めてよい。 この処理は、いつでも通用するだろうか? いかなる場合に通用しないか。また、その場合にはどんなことを 考えればいいかを自由に論ぜよ(200字以内)。 1.2 後にわかるように、プログラムには、すべてのおこりうる場合に 対して計算機が何をすべきか、あらかじめ示しておかねばならない。 テキスト p.6【例 1.1】、p.7【演習 1.1】を参考にし、 a,b,cが任意の値をもつ2次方程式を、解の公式を用いて解く手順を 手順表(自然言語(日本語または英語)で箇条書き)で表せ。 (具体的には判別式を用いて、解の種類を分類する。 複素数は、実部と虚部をそれぞれ求める。) 複素数知らない?忘れた?勉強せよ。 1.3 プログラムの作成過程を200字以内で説明せよ(テキストp.18 [復習1.6])。
一覧へ