授業内容・計画(詳細)の情報


ページを読み終えましたら、ブラウザを終了させてください。

【基本情報】
2018年度 春学期  
授業科目名 プログラミング基礎
曜日 時限 月-3
テーマ 基礎プログラミング能力の習得
キーワード 基本プログラム プログラム作成演習 C++


【授業要旨または授業概要】
 
【授業内容】
 今日では、あらゆる分野でコンピュータが日常的に有効活用されている。特に、理工系
の各種専門分野では複雑な科学技術計算処理を主体とした目的でコンピュータを利用する
場合が多くある。そのような時に、既存の応用ソフトウェアでは対応できない場合や自分
の思った通りの処理をさせる場合にはプログラムが必要となってくる。プログラムとは、
ある一定の処理作業をコンピュータに行わせるために一つ一つの命令を正しい順序で組み
合わせた命令の集まりである。  
 本講義では、さまざまな問題をコンピュータで解決する場合などに必要となるプログラムに関する基礎知識と技法を習得する事を目標としている。具体的には、例題によるコンピュータ実習を通じて、コンピュータの動作原理とプログラムの基礎概念、プログラムの基本的な約束、データの入力・演算・出力、繰り返し処理、条件判別による処理の流れ変更、配列による多量データ処理(合計、平均、標準偏差)、データの並べ替、共通する処理プログラムのモジュール化等について分かりやすく解説し、適時、プログラム作成実習を通じて確認する。
 なお、コンピュータ実習では汎用性が極めて高いプログラム言語C++を使用する。
 また、講義テーマ毎に教師作成資料を配付する。

 


【学修の到達目標】
◆授業で育成する力スキル
1.自ら考える力
2.成し遂げ力
3.情報処理力
 

◆学修の到達目標
(1)基本的なプログラムの作成と実行が行える(基礎情報処理力)
(2)自力で正しく読みやすいプログラムを作成できる(成し遂げ力)
(3)エラーを見つけ、正しく修正することができる(自ら考える力・成し遂げ力)
(4)反復や条件による分岐命令を修得し、目的に合ったプログラムを作成できる
   (自ら考える力)
(5)構造化プログラミングをもとに自力でプログラミングできる(情報処理力)

添付ファイル:プログラミングC_学習達成度確認表.pdf

【授業計画】
◆スケジュール
 
第01回:ガイダンス
    ・コンピュータの基本構成と動作原理、実習環境設定
    ・データの内部表現(10進数、2進数、8進数、16進数、文字コード)
             
第02回:プログラムの基本概念とデータの入力、計算、答えの書き方(1)
    ・プログラムの作成・翻訳・実行の基本操作(Visual Studio の基本操作)
    ・データの型と変数、標準入出力命令
    ・変数の定義、代入と入力命令、和・差・積・商(四則)の計算、出力命令
    ・プログラム作成の基本的な順番
    ・=の役割、各種計算式の書き方、わかり易い入出力命令の書き方
     例題01.メッセージを出力する
     例題02.二つのデータを入力し、和・差・積・商の計算後、答えを出力する
     練習01.円の面積、球の表面積、球の体積を求める
         課題01.台形の面積と円錐の体積を求める

第03回:データの入力、計算、答えの書き方指定出力(2)
    ・余り、べき乗、各種関数の計算式の書き方と( )の役割
         練習02.複利計算による元利合計の計算(べき乗の計算)
         練習03.2次方程式の根を求める(平方根の計算)
     練習04.sin(x), cos(x), tan(x) の値を計算し小数点以下5桁まで表示する
         課題02.3辺の長さから三角形の面積を求めて小数点以下3桁まで表示する
         課題03.木からの水平距離と仰角から木の高さを求めて小数点以下3桁までを
         表示する

第04回:繰り返し回数がわかっている場合の繰り返し命令( for文 )
         例題03.1からnまでの合計を求める
      例題04.小数点以下6桁までを表示する三角関数表を作成する
     練習05.1からnまでの偶数と奇数の合計を求める
     練習06.nの階乗を求める
     練習07.初速V0で真上に投げ上げたボールの高さを0秒から6秒まで0.2秒毎に
                 計算し、時間と高さを表示させる
     課題04.n,n2,n3,nの平方根,nの立方根 の数表を作成する
     課題05.eの近似値をnが1から12まで変えながらn,n!,1/n!,e,誤差の
                 値を一覧表として表示させる
           
第05回:繰り返し回数がわからない場合の繰り返し命令( while文 )
     例題05.お小遣いの計算(初日に1円を貰い、翌日は前日の倍のお小遣い貰う
         事を繰り返し、100万円を超えるお小遣いを貰える日は何日目かとお
                 小遣いの額を求める)
         練習08.複利計算の元利合計が単利計算による元利合計の2倍になる年は何年
         後で、その時の金額はそれぞれいくらかを求める
      課題06.eの近似値を、1/n! の値が10の-16乗より小さくなるまで求めて小数
         点以下17桁まで出力する

第06回:条件判定命令( if 文 とswitch 文 )
     例題06.テスト3科目の平均点を求め、成績評価を出力する
         例題07.1〜12月の月を入力して、その月の日数を出力する(switch文)
     練習09.2次方程式の根を判別式によって分類し、答えを出力する
     練習10. 西暦の年を入力して、その年がうるう年か平年かを判定して出力する
     課題07.身長と体重から身体比(BMI)を求めて体型を判定して出力する

第07回:中間試験

第08回:*中間試験の解答と解説
    多量データの取り扱い(配列)
     例題08.10個の測定データの平均値と個々のデータと平均値との差を求める
     練習11.例題06に分散値と標準偏差を求めるプログラムを追加する
     課題08.30個の測定データの平均値、分散値、標準偏差、誤差範囲を求める

第09回:データファイルの取り扱い(1)と文字データ(ファイルからのデータ入力)
     例題09.データファイルにある30個のデータを読み取って1行に10個のデータ
         を5行で表示する。
     練習12.40人分の医師の履歴データをデータファイルから読み取って、一覧表
                 として表示させる(文字データの取り扱い)
     課題09.水平尾翼の板厚をマイクロメータで測定した50個のデータがファイル
                 に保存されている。このデータを読み取って水平尾翼の平均板厚値、
                 分散値、標準偏差、誤差範囲を求めて表示する
           
第10回:データファイルの取り扱い(2)(ファイルへのデータ出力) 
     例題10.角度xを0°から90°まで0.1°毎に変化させた三角関数表をデータ
                 ファイルへ出力する
     練習13.キーボードから20人分の氏名、年齢、性別、出身地、身長、体重の
                 データを入力してデータファイルに出力した後に、そのデータを読み
                 取って画面に表示させる

     課題10.大砲の発射角θと初速V0が与えられた時、砲弾の位置(x,y)を発
         射(t=0秒)から着弾するまで0.1秒ごとに計算して、t,x,yの値
                 をデータファイルへ出力後、Excelで砲弾の軌道をグラフ表示する

第11回:最大値、最小値の求め方とデータの並び替え(ソート)
     例題11.10日間の気温を測定したデータから最高気温とその日を求める
     練習14.例題11のデータから、最低気温とその日を求める
     練習15.変数aと変数bに入っているデータを入れ替える
     課題11.最小値を求める方法とデータの入れ替えを組み合わせて、10日間の気
                 温データを気温の低い順に並び替えて表示する

第12回:関数の定義とその利用方法(1)
     例題12.2点間の座標データ(x1,y1)と(x2,y2)の距離を求めるプログラムを関
                 数f(x,y) として定義し、主プログラムで呼び出してn点の座標を結
                 ぶ距離を効率的に計算する
     例題13.y = ax2 + bx + c の区間x[-10, +10] の面積をシンプソンの1/3公式
                 を使って求める
     練習16.区間 x[0, π/2]の範囲における y=sin(x)+cos(2x) の面積をシンプ
                 ソンの1/3公式を使って求める
         課題12.弾丸を発射した時のライフル銃身内のガス圧分布測定データから銃口
                 を出た時の弾丸の速度を求める

第13回:関数の定義とその利用方法(2)
       ・戻り値がある関数と戻り値がない関数の定義と利用
    ・ポインターの概念
     例題14.n個のデータの平均値、分散値、標準偏差、誤差範囲を求める関数プ
         ログラムを定義し、医師の身長と体重をデータファイルから40人分を
                 読み取って、効率よく身長と体重の平均値、標準偏差、誤差範囲を表
         示させる(戻り値が複数ある関数の定義と利用)
     例題15.2変数に格納されているデータを入れ替える関数を定義し、利用する
        (戻り値がない関数の定義と利用) 

第14回:まとめ

※【重要項目】:毎回の授業出席時には、必ず、復習・予習と課題実習で4時間の勉強
        を行う事!(講義出席条件です!) 
◆予習・復習
0.受講者には、授業支援システムで教材を公開しています。

1.講義の出席前には、講義の目標や内容を事前に理解するように予習をして下さい。

2.講義で説明後、必ず例題のプログラミング実習を通じて、その単元のプログラム作成
  のキーポイントを理解してもらいます。その後、講義時間内に例題を真似て練習問題
  や実習問題を実習してもらうようにします。
  ・予習をしてきた人は講義時間内で復習を行う事になり、知識の定着が図れます。
  このような方法で、その単元の内容をできるだけ講義時間内で理解してもらいます。

3.講義内容の定着を図るために、次週までに提出してもらう実習課題を出します。
  空いている時間を利用し、復習をしながら課題のプログラムを作成してもらいます。
  ・課題のプログラム作成では間違えても構いません。
  ・どこが分からないのか? 何故うまく出来ないのか? が抑えられればOKです。
  ・間違えても自分でプログラムを作るという事が大切です。
   もちろん、友達と協力してプログラムを作る事もOKです。

4.東海大学の学生さん方は、Visual Studio を無償でダウンロードできるように契約し
  ていますので、自分のPCにダウンロードしておけば、どこでも大学と同じ環境でプ
  ログラム作成と実習が行えます。

5.上記をよく理解して、予習・復習を毎回、必ず行うようにして下さい。

6.プログラミングの基礎を固めるためには、半期という限られた時間内で、できるだけ
  多くのプログラム(25以上)を作成・実習して多くの経験を積み、実力をつける必要
  があります。

* みなさん方の努力と健闘を祈ります! ( ファイト!! )
◆集中授業の期間
 

【履修上の注意点】
* 積み木のように、前の授業を土台にして次の授業が展開されますので、欠席すると
  コンピュータの操作を含めて次の授業が分からなくなります。
* 初心者が2回連続して欠席すると授業が理解できなくなりますので、できるだけ欠席
  しないようにして下さい。
* 今までの統計データから、「出席率と課題の実習率」と「単位取得率と成績評価」
  には正比例の関係があります。
* 予習・復習を毎回、継続的に行いながら、課題の実習結果を期限内に提出する事が
  とても重要です。<継続は力なり!>
* 毎週、自分で考えて各種プログラムの作成をするように継続するようにして下さい。
  そうすれば、初心者でも半年後には基礎的なプログラムを自分で作成できるような
  実力が十分に付きます。

【成績評価の基準および方法】
※ 成績は授業中に実施する実習(10%)、課題実習(30%)および試験(60%)
  を総合して100%として評価する。
※ 総合点数が90%以上は「S」、80%以上は「A」、70%以上は「B」、
  60%以上は「C」、60%未満は「E」と評価する。
  なお、出席が2/3未満と期末試験を受けなかった学生は「/」と評価する。


【教科書・参考書】
区分 書名 著者名 発行元 定価
参考書 やさしいC++第4版[やさしいシリーズ] 高橋麻奈 ソフトバンククリエイティブ \2,808


【その他の教材】
・教科書は使用しない。
・教師作成の資料を配布すると同時に授業支援システムを活用する。
・参考書は個々のレベルに合わせて適宜紹介する。


【担当教員への連絡方法】
居室:F館2階・情報教育センター第11研究室(月)
E−Mail:takao3@tokai-u.jp

PAGE TOP