関数(1) 第11回 [6月29日、H.16(‘04)] 今日のメニュー 1 前回の課題 2 前回の宿題 3 いろいろな関数の演習 4 課題

Slides:



Advertisements
Similar presentations
プログラミング論 第八回数字の計算,整数の入出力. 本日の内容 前回の課題(続き) 前回の課題(続き) 数字の計算をする 数字の計算をする – 加減乗除を行う – インクリメント演算子とデクリメン ト演算子.
Advertisements

1 第5回 配列. 2 今回の目標 マクロ定義の効果を理解する。 1次元配列を理解する。 2次元配列を理解する。 ☆2 × 2の行列の行列式を求めるプログラ ムを作成する.
復習 配列変数の要素 5は配列の要素数 これらの変数をそれぞれ配列の要素と呼ぶ この数字を配列の添え字,またはインデックスと呼ぶ
復習 配列変数の要素 5は配列の要素数 これらの変数をそれぞれ配列の要素と呼ぶ この数字を配列の添え字,またはインデックスと呼ぶ
配列の宣言 配列要素の初期値 配列の上限 メモリ領域 多次元配列 配列の応用
情報・知能工学系 山本一公 プログラミング演習Ⅱ 第3回 配列(1) 情報・知能工学系 山本一公
7/10 if 文課題 力作が多くて感心! 演習1:キーボードから2つの整数を入力し、小さい方の数字を 表示せよ。
演算、整数型と浮動小数点型 第3回目 [4月27日、H.16(‘04)] 本日のメニュー 1)前回の課題・宿題 2)ファイルサーバの利用
応用理工学情報処理 第1回(2015年10月 5日) 月曜日担当 前島展也 Manaba
配列(2) 第10回目 [6月22日、H.16(‘04)] 本日のメニュー 1)前回の課題について 2)前回の宿題について 3)課題
情報・知能工学系 山本一公 プログラミング演習Ⅱ 第4回 配列(2) 情報・知能工学系 山本一公
プログラミング入門2 第4回 配列 for文 変数宣言 初期化
ファーストイヤー・セミナーⅡ 第8回 データの入力.
配列(2) 第10回[平成15年6月26日(木)]:PN03-10.ppt 今日の内容 1 素数を求める(教科書の例):復習
6/19 前回復習 for文による繰り返し計算 演習1:1から10まで足して画面に結果を表示する 提出者: 1人
プログラミング入門2 第10回 構造体 情報工学科 篠埜 功.
プログラミング入門2 第10回 構造体 情報工学科 篠埜 功.
演算、整数型と浮動小数点型 第3回[平成16年4月27日(火)]:PN04ー03.ppt 今日の内容 1 復習 2 加減・乗除演算子
プログラミング演習Ⅱ 第12回 文字列とポインタ(1)
岩村雅一 知能情報工学演習I 第9回(C言語第3回) 岩村雅一
最終回 総合演習 第13回目 [7月17日、H.15(‘03)] 本日のメニュー 1)総合演習課題 2)過去の試験問題 3)試験について
多重ループ 繰り返し構造:補足事項 第8回目 [6月8日、H.16(‘04)] 本日のメニュー 1)前回の課題について
多重ループ 繰り返し構造:補足事項 第8回目 [6月12日、H.15(‘03)] 本日のメニュー 1)前回の課題について
プログラミング演習(2組) 第12回
C言語 配列 2016年 吉田研究室.
プログラミング実習 1・2 クラス 第 1 週目 担当教員:  渡邊 直樹.
理由:文字数より要素数の多い配列を用いた時に,文字列の最後を示すため
理由:文字数より要素数の多い配列を用いた時に,文字列の最後を示すため
情報理論2 第6回 小林 学 湘南工科大学 2011年11月15日 〒 神奈川県藤沢市辻堂西海岸1-1-25
配列の扱い、探索 有効範囲と記憶域期間 第12回 [7月10日、H.15(‘03)] 今日のメニュー 1 前回の課題の復習
配列の扱い、探索 有効範囲と記憶域期間 第12回 [7月6日、H.16(‘04)] 今日のメニュー 1 前回の課題の復習
湘南工科大学 2013年12月10日 プログラミング基礎1 湘南工科大学情報工学科 准教授 小林 学.
配列(1) 第9回目 [6月15日、H.16(‘04)] 本日のメニュー 1)前回の課題について 2)前回の宿題について 3)配列 4)課題
精密工学科プログラミング基礎Ⅱ 第3回資料 今回の授業で習得してほしいこと: 2次元配列の使い方 (前回の1次元配列の復習もします.)
選択構造と条件判断 第5回目 [5月18日、H.16(‘04)] 本日のメニュー 1)前回の課題について 2)構造化プログラム(選択構造)
岩村雅一 知能情報工学演習I 第8回(後半第2回) 岩村雅一
最終回 総合演習 第13回目 [7月13日、H.16(‘04)] 本日のメニュー 1)前回の課題について 2)総合演習課題
岩村雅一 知能情報工学演習I 第11回(後半第5回) 岩村雅一
関数と配列とポインタ 1次元配列 2次元配列 配列を使って結果を返す 演習問題
岩村雅一 知能情報工学演習I 第9回(後半第3回) 岩村雅一
高度プログラミング演習 (03).
岩村雅一 知能情報工学演習I 第8回(C言語第2回) 岩村雅一
前回の練習問題.
講義では、Cプログラミングの基本を学び 演習では、やや実践的なプログラミングを通して学ぶ
高度プログラミング演習 (02).
プログラミング演習(’04) ・ガイダンス ・簡単なプログラムの作成 ・aucopyの練習 ・今日の課題・宿題
湘南工科大学 2013年10月22日 プログラミング基礎1 湘南工科大学情報工学科 准教授 小林 学.
関数の再帰呼び出しとは ハノイの塔 リダイレクト レポート課題
岩村雅一 知能情報工学演習I 第11回(後半第5回) 岩村雅一
岩村雅一 知能情報工学演習I 第9回(後半第3回) 岩村雅一
情報理論2 第3回 小林 学 湘南工科大学 2011年10月25日 〒 神奈川県藤沢市辻堂西海岸1-1-25
岩村雅一 知能情報工学演習I 第9回(C言語第3回) 岩村雅一
岩村雅一 知能情報工学演習I 第9回(後半第3回) 岩村雅一
プログラミング序論演習.
復習 breakとcontinueの違い int i; for (i = 1; i <= 100; i++) { ・・・処理1・・・・
ネットワーク・プログラミング Cプログラミングの基礎.
復習 breakとcontinueの違い int i; for (i = 1; i <= 100; i++) { ・・・処理1・・・・
プログラミング入門2 第5回 配列 for文 変数宣言 初期化
岩村雅一 知能情報工学演習I 第8回(後半第2回) 岩村雅一
岩村雅一 知能情報工学演習I 第8回(C言語第2回) 岩村雅一
湘南工科大学 2013年10月22日 情報理論2 湘南工科大学情報工学科 准教授 小林 学.
プログラミング入門2 第5回 配列 変数宣言、初期化について
第4回 配列.
岩村雅一 知能情報工学演習I 第13回(後半第7回) 岩村雅一
第5回 配列.
知能情報工学演習I 第10回( C言語第4回) 課題の回答
プログラミング演習I 補講用課題
岩村雅一 知能情報工学演習I 第7回(後半第1回) 岩村雅一
第1章 文字の表示と計算 printfと演算子をやります.
岩村雅一 知能情報工学演習I 第9回(C言語第3回) 岩村雅一
Presentation transcript:

関数(1) 第11回 [6月29日、H.16(‘04)] 今日のメニュー 1 前回の課題 2 前回の宿題 3 いろいろな関数の演習 4 課題 プログラミング演習('04) 2017/3/4 第11回 [6月29日、H.16(‘04)] 関数(1) 今日のメニュー 1 前回の課題 2 前回の宿題 3 いろいろな関数の演習 4 課題 5 宿題 PE04-11.ppt PE04-11.ppt

プログラミング演習('04) 2017/3/4 前回の課題 次の頁に示すような、10人の学生の学籍番号、英語・数学・国語の得点データがある。これらのデータを2次元配列の初期値として与え、以下の内容を見やすく出力するプログラムを作成せよ。  ・各学生の番号、各科目の得点、合計点  ・全員の各科目及び合計点の平均点 ファイル名は enA-****.c 提出はいつもと同様、リスト印刷とファイル転送 PE04-11.ppt

前回の宿題 [提出はいつもの通り] ファイル名:hwA-****.c プログラミング演習('04) 2017/3/4 ファイル名:hwA-****.c 前回の宿題 [提出はいつもの通り] ◎今日の課題で、以下の出力例のように、各学生の3科目の平均点、全員についての平均点を小数点以下2桁まで出力せよ。(各学生の平均点は1次元配列を利用せよ。赤い部分が今回の宿題の部分) 学籍番号 英語 数学 国語 合計点  平均点  1023 63 71 68 202 67.33  1026 49 28 51 128 42.67  1038 80 63 85 228 76.00 : : : :  1132 81 89 75 245 81.67 平均点   67.3 62.1 72.1 201.5 67.17 締め切り: 7月26日(土) 午後1時(厳守) PE04-11.ppt

int a[11][5] = { { 1023, 63, 71, 68, 0},  { 1026, 49, 28, 51, 0},  { 1038, 80, 63, 85, 0},  { 1055, 75, 60, 84, 0},  { 1076, 69, 79, 92, 0},  { 1084, 96, 88, 81, 0},  { 1092, 63, 52, 67, 0},  { 1104, 53, 68, 72, 0},  { 1126, 44, 23, 46, 0},  { 1132, 81, 89, 75, 0}, { 0, 0, 0, 0, 0} }; double av[10]={0.0}, kav[6]={0.0}; int i, j; ,を忘れない ;を忘れない

//各自の合計得点と平均点を計算する for( i=0; i<10; i++) { a[i][4]=a[i][1]+a[i][2]+a[i][3]; av[i]=a[i][4]/3.0; } /* 各科目と合計の総和と平均 */ for ( j=1; j<=4; j++) { for ( i=0; i<=9; i++) a[10][j] += a[i][j]; kav[j] = a[10][j]/10.0; kav[5] = kav[4]/3.0; double型av[i] a [0][1][2][3][4] [0] [1] [2] [8] [9] [10] : 全ての平均 番号 英 語総和 数学総和 国語総和 合計総和 kav[0][1][2][3][4][5]

: printf( " 番号 英語 数学 国語 合計点 平均点\n"); for( i=0; i<10; i++) { for ( j=0; j<=4; j++) printf("%6d",a[i][j]); printf("%9.2f\n",av[i]); } /*各科目と合計の平均点出力*/ printf("平均点 "); for ( j=1; j<=4; j++)  printf("%6.1f", kav[j]); printf("%7.2f\n",kav[5]); double型av[i] a [0][1][2][3][4] [0] [1] [2] [8] [9] [10] : 全ての平均 番号 英語平均 数学平均 国語平均 合計平均 kav[0][1][2][3][4][5]

課題・宿題の提出について ・配列の添字のミスが大変多い! int a[10][4] → a[0][0]~a[9][3]まで  → a[10][j] a[i][4] を使おうとしている ・配列の初期化をしていない → printf( ) でキーボードから入力している ・配列の内容の出力は大体できていた。 ・平均点の為の double型の配列について → 1次元配列 av[5] をわざわざ2次元配列で av[5][1] や av[1][5] としている。 → 要素の数が1なのに、存在しないav[i][1]を利用しようとしている。 正しくは av[i][0]

課題・宿題の提出について .平均点を小数点以下まで表示していない ・各科目の平均点を求めるとき、配列kav[6]を使わずに、a[10][j](jは1~4)に合計を入れておき、出力するとき10.0で割っても良い。  for ( j=1; j<=4; j++) printf("%6.1f", a[10][j]/10.0); ・式の中に定数を書く場合、整数型か浮動小数点型を明白にする。 nが整数型なら、 n/3は整数型、n/3.0は浮動小数点型、 aが浮動小数点型なら、a/3は3を3.0に変換し、 a/3.0 と見なされる。 ・学籍番号・氏名の出力忘れが多くなった。

今日の課題 (1)List6-1を参考に演習6ー1(118頁) (2)List6-2を参考に演習6ー2(118頁) プログラミング演習('04) 2017/3/4 今日の課題 (1)List6-1を参考に演習6ー1(118頁) (2)List6-2を参考に演習6ー2(118頁) (3)List6-3を参考に演習6ー3(119頁) List6-6を参考に演習6ー4(121頁) (4)List6-7,8を参考に演習6ー5(123頁) (5)演習6ー6(125頁) ファイル名は enB-****.c 提出はいつもと同様、リスト印刷とファイル転送 PE04-11.ppt

演習6-1の関数の中身を記述 演習6-2の関数の中身を記述 演習6-3の関数の中身を記述 演習6-4の関数の中身を記述 #include <stdio.h> int minof( int x, int y) { } int min3( int x, int y, int z) { } int cube( int x) { } int pow4( int x) { } 演習6-1の関数の中身を記述 演習6-2の関数の中身を記述 演習6-3の関数の中身を記述 演習6-4の関数の中身を記述

演習6-5の関数の中身を記述 演習6-6の関数の中身を記述 void alert( int no) { } void hello( void ) { } int main(void) { int na, nb, nc; /*演習6-1,6-2の場合*/ /*整数 na, nb, nc を入力する*/ printf("小さい方の値は %d です。\n",           minof( na, nb) ); printf("3数中の最小値は %d です。\n",  min3( na, nb, nc) ); ・・・・・・ 演習6-5の関数の中身を記述 演習6-6の関数の中身を記述

今回の宿題 (1)教科書の114頁~129頁を良く読んで復習する。 (2)教科書の120頁~145頁を良く読んで予習する。 プログラミング演習('04) 2017/3/4 今回の宿題 (1)教科書の114頁~129頁を良く読んで復習する。 (2)教科書の120頁~145頁を良く読んで予習する。 (3)今日の課題が未完成の場合、完成して提出する。 ファイル名:hwB-****.c 締め切り: 7月3日(土) 午後1時(厳守) PE04-11.ppt