2017年度 プログラミングⅠ ~ はじめてのプログラミング ~
コンピュータはなぜ動くの? 数学に基づいた緻密な理論の下でコンピュータが如何に動作しているのかを学んだ。 → プログラミングⅠ(2年前学期) 数学に基づいた緻密な理論の下でコンピュータが如何に動作しているのかを学んだ。 → プログラミングⅠ(2年前学期) プログラミングⅡではプログラミングに必要な基礎知識を学び、C言語によるプログラミング(演習)を学習する。 また、コンピュータの本質を知ることで、コンピュータやインターネットを上手に活用できる人材を育成する。 2
コンピュータシステム[再掲] コンピュータ 外部 プログラム データ 結果 処理 3
プログラミングⅠで学んだこと 2進数 論理演算(ブール代数,2値論理) 論理回路 内部構造と動作の仕組み (機械語→プログラムへ) アルゴリズムと流れ図 計算量と誤差 オペレーティングシステムとインターネット コンピュータの歴史とプログラミング言語 4
プログラミングⅡで学ぶこと ファイルシステムの理解 CUI(コマンドプロンプト;シェル;ターミナル)におけるコマンドの使い方 C言語によるプログラミング法 定番(知っておきたい)プログラム 並び替えに関するプログラム 線形代数に関するプログラム(オプション) 微分積分に関するプログラム(オプション) 5
プログラミングとは 自分の頭で考え、自分の手を動かすべし NEXT STEP 論理的な思考能力が必要 1つでも間違えると正しく動かない 全てを正しく理解する必要がある 人間のような柔軟さはないので、全ての命令を一つ一つ正しく記述しなければならない 怖がる必要はない(直せばよい) 間違えていれば正しい結果が得られない 人間は間違いと勘違いをよくする 自分の頭で考え、自分の手を動かすべし 6
C言語の特徴 「C言語スタートブック」より抜粋(P.18) 構造化プログラミング向き言語 “低水準”な高級言語 データ型が豊富 コンパクトな言語仕様 関数によるモジュール化 移植性が高い 「C言語スタートブック」より抜粋(P.18) 7
最も基本的なC言語プログラム #include <stdio.h> int main(void) { printf(“Hello World\n”); return 0; } *現在推奨されている書き方
「スタートブック」のC言語プログラム #include <stdio.h> void main() { printf(“Hello World\n”); } *情報処理技術者試験に対応した書き方 ただし、現在推奨されている書き方ではない
はじめにマスターすべきこと ファイルシステムの理解 ディレクトリ(フォルダ)、パス(パスを通す)、カレントディレクトリ(ワーキングディレクトリ) CUI(コマンドプロンプト;シェル;ターミナル)におけるコマンドの使い方 ディレクトリの移動、ファイルの操作など C言語のプログラミング(コンパイル&リンク)
プログラミングⅠで学んだことが大きく関係する C言語をマスターするためのポイント 型(数値) 配列 関数(引数と戻り値) ポインタ(アドレス参照) プログラミングⅠで学んだことが大きく関係する
大学の端末室で利用できるC言語 Microsoft Visual Studio 2010(製品版) .NET Frameworkが利用できる Gnu C Cygwin環境下で利用可能(Unix系) Gnu C MinGW+MSYS環境下で利用可能(Unix系) Intel C Linux計算サーバにリモートログインすることで利用可能(マルチスレッドに対応;Unix系)
自宅で使えるフリーのC言語 Microsoft Visual Studio Express . NET Frameworkが利用できる(30日を超えて使用する場合はユーザー登録が必要) Borland C++ テキストにも付属し、実績のあるコンパイラ Gnu C Cygwin環境下で利用可能(Unix系) Gnu C MinGW+MSYS環境下で利用可能(Unix系)
プログラミングの大まかな流れ ソースプログラムの作成 コンパイル&リンク 実行可能ファイルの実行 テキストエディタでソースプログラムを作成 拡張子を「.c」として保存(hogehoge.c) なお、この作業を「コーディング」と呼ぶ ソースプログラムの作成 ソースプログラムを機械語に変換 「cl hogehoge.c」を実行 コンパイル&リンク 実行可能ファイルの実行 実行可能ファイル(ロードモジュール)を実行 「hogehoge.exe」を実行
情報処理技術者試験について(1) 情報処理技術者試験は「情報処理の促進に関する法律」に基づく国家試験で、社会の認知度も高く、非常に人気のある試験です。試験は春(4月の第3日曜日)と秋(10月の第3日曜日)に実施され、試験区分には「基本情報技術者試験」や「応用情報技術者試験」などがあります。 *CBT方式による「ITパスポート試験」は随時行われている。 学生のみなさまには、就職活動が始まるまでに「基本情報技術者試験」に合格しておくことをお薦めします。これらの試験に合格することで、情報化社会に適応できるバランスの取れた人材であることを社会に対してアピールしましょう (個人情報保護法などの施行に伴い、企業や公務員の一般常識として情報に関する問題が出題されるようになりました)。 15
情報処理技術者試験について(2) そのためには、コンピュータなどの情報機器に対して偏見を持つのではなく、情報処理に関する基礎的な知識や技術をしっかり習得した上で、コンピュータやスマートフォンなどを上手(正しく効率的)に使えるようになることが大切です。 また、正しい知識を習得することで、最近急増しているネットワーク犯罪に巻き込まれ、知らず知らずの間に犯罪の被害者や加害者になってしまうことを未然に防ぎましょう。 この機会に、チャレンジしてみては如何でしょうか。 16
情報処理技術者試験について(3) 平成21年度より、新試験制度スタート 詳細については、情報処理推進機構(IPA)を参照のこと (http://www.jitec.ipa.go.jp/) 幸山研究室HPの試験に関する詳細事項 (http://kouyama.sci.u-toyama.ac.jp/main/computer/personal/jitec/information.htm) 幸山研究室HPの数学科合格者データ (http://kouyama.sci.u-toyama.ac.jp/main/computer/personal/jitec/pass.htm) 17
平成29年度 秋期 情報処理技術者試験 案内 試験区分 試験日 「案内書・願書」配布開始 応用情報技術者試験(レベル3) ← 更に上を目指して 基本情報技術者試験(レベル2) ← チャレンジ 情報セキュリティマネジメント試験(レベル1) 試験日 平成29年10月15日(日) 「案内書・願書」配布開始 平成29年7月中旬予定 (配布を開始次第、掲示板にてお知らせします)
ITパスポート試験(CBT方式) CBT方式とは、コンピュータの前に座って選択式の問題に解答する試験方式 富山と高岡でほぼ毎週土曜日に実施 何度でもチャレンジできる 情報化社会に適応した人材であることを社会(企業や学校)に示せる ●情報セキュリティや情報モラルに関する知識が身に付きます ●企業コンプライアンス・法令遵守に貢献する正しい知識が身に付きます ●経営戦略、財務など、経営全般に関する基礎知識が身に付きます ●業務に必要なITの基礎知識が身に付きます