選択構造と条件判断 第5回目 [5月18日、H.16(‘04)] 本日のメニュー 1)前回の課題について 2)構造化プログラム(選択構造)

Slides:



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

プログラミング演習( 2 組) 第 9 回
情報・知能工学系 山本一公 プログラミング演習Ⅱ 第3回 配列(1) 情報・知能工学系 山本一公
7/10 if 文課題 力作が多くて感心! 演習1:キーボードから2つの整数を入力し、小さい方の数字を 表示せよ。
演算、整数型と浮動小数点型 第3回目 [4月27日、H.16(‘04)] 本日のメニュー 1)前回の課題・宿題 2)ファイルサーバの利用
配列(2) 第10回目 [6月22日、H.16(‘04)] 本日のメニュー 1)前回の課題について 2)前回の宿題について 3)課題
プログラミング演習(1組) 第7回
関数(1) 第11回 [6月29日、H.16(‘04)] 今日のメニュー 1 前回の課題 2 前回の宿題 3 いろいろな関数の演習 4 課題
情報・知能工学系 山本一公 プログラミング演習Ⅱ 第4回 配列(2) 情報・知能工学系 山本一公
計算技術研究会 C言語講座 第3回 Loops (for文 while文).
配列(2) 第10回[平成15年6月26日(木)]:PN03-10.ppt 今日の内容 1 素数を求める(教科書の例):復習
6/19 前回復習 for文による繰り返し計算 演習1:1から10まで足して画面に結果を表示する 提出者: 1人
6/26 前回復習 for文、while文による繰り返し計算
演算、整数型と浮動小数点型 第3回[平成16年4月27日(火)]:PN04ー03.ppt 今日の内容 1 復習 2 加減・乗除演算子
岩村雅一 知能情報工学演習I 第9回(C言語第3回) 岩村雅一
C言語 第2講 生物機能制御学講座 濱田 農学部7号館209室.
最終回 総合演習 第13回目 [7月17日、H.15(‘03)] 本日のメニュー 1)総合演習課題 2)過去の試験問題 3)試験について
プログラミング基礎I(再) 山元進.
多重ループ 繰り返し構造:補足事項 第8回目 [6月8日、H.16(‘04)] 本日のメニュー 1)前回の課題について
多重ループ 繰り返し構造:補足事項 第8回目 [6月12日、H.15(‘03)] 本日のメニュー 1)前回の課題について
基礎プログラミング (第五回) 担当者: 伊藤誠 (量子多体物理研究室) 内容: 1. 先週のおさらいと続き (実習)
配列の扱い、探索 有効範囲と記憶域期間 第12回 [7月10日、H.15(‘03)] 今日のメニュー 1 前回の課題の復習
配列の扱い、探索 有効範囲と記憶域期間 第12回 [7月6日、H.16(‘04)] 今日のメニュー 1 前回の課題の復習
湘南工科大学 2013年12月10日 プログラミング基礎1 湘南工科大学情報工学科 准教授 小林 学.
プログラミング入門2 第3回 繰り返し文 芝浦工業大学情報工学科 青木 義満
配列(1) 第9回目 [6月15日、H.16(‘04)] 本日のメニュー 1)前回の課題について 2)前回の宿題について 3)配列 4)課題
第7回 条件による繰り返し.
岩村雅一 知能情報工学演習I 第8回(後半第2回) 岩村雅一
プログラミング入門2 第2回 型と演算 条件分岐 篠埜 功.
最終回 総合演習 第13回目 [7月13日、H.16(‘04)] 本日のメニュー 1)前回の課題について 2)総合演習課題
岩村雅一 知能情報工学演習I 第11回(後半第5回) 岩村雅一
プログラミング演習(2組) 第8回
第10回関数 Ⅱ (ローカル変数とスコープ).
プログラミング演習I 2003年5月7日(第4回) 木村巌.
プログラミング入門2 第2回 型と演算 条件分岐 篠埜 功.
知能情報工学演習I 第9回( C言語第3回) 課題の回答
岩村雅一 知能情報工学演習I 第9回(後半第3回) 岩村雅一
高度プログラミング演習 (03).
岩村雅一 知能情報工学演習I 第8回(C言語第2回) 岩村雅一
今までの練習問題の復習.
第7回 条件による繰り返し.
岩村雅一 知能情報工学演習I 第10回(後半第4回) 岩村雅一
高度プログラミング演習 (02).
知能情報工学演習I 第8回( C言語第2回) 課題の回答
プログラミング演習(’04) ・ガイダンス ・簡単なプログラムの作成 ・aucopyの練習 ・今日の課題・宿題
岩村雅一 知能情報工学演習I 第11回(後半第5回) 岩村雅一
岩村雅一 知能情報工学演習I 第9回(後半第3回) 岩村雅一
整数データと浮動小数データ.
岩村雅一 知能情報工学演習I 第9回(C言語第3回) 岩村雅一
C言語 はじめに 2016年 吉田研究室.
岩村雅一 知能情報工学演習I 第9回(後半第3回) 岩村雅一
基礎プログラミング演習 第6回.
プログラミングⅡ 第2回.
ウェブデザイン演習 第6回.
プログラミング入門2 第2回 型と演算 条件分岐 篠埜 功.
プログラミング基礎演習 第4回.
ループだよ!難しいよ! 第5章 while(ループ);.
標準入出力、変数、演算子、エスケープシーケンス
知能情報工学演習I 第8回(後半第2回) 課題の回答
岩村雅一 知能情報工学演習I 第8回(後半第2回) 岩村雅一
岩村雅一 知能情報工学演習I 第8回(C言語第2回) 岩村雅一
プログラミング演習I 数値計算における計算精度と誤差
岩村雅一 知能情報工学演習I 第10回(後半第4回) 岩村雅一
プログラミング序論演習.
知能情報工学演習I 第9回(後半第3回) 課題の回答
復習 いろいろな変数型(2) char 1バイト → 英数字1文字を入れるのにぴったり アスキーコード → 付録 int
C言語講座 四則演算  if ,  switch 制御文.
知能情報工学演習I 第10回( C言語第4回) 課題の回答
第1章 文字の表示と計算 printfと演算子をやります.
岩村雅一 知能情報工学演習I 第9回(C言語第3回) 岩村雅一
Presentation transcript:

選択構造と条件判断 第5回目 [5月18日、H.16(‘04)] 本日のメニュー 1)前回の課題について 2)構造化プログラム(選択構造) プログラミング演習('04) 2018/11/7 第5回目 [5月18日、H.16(‘04)] 選択構造と条件判断 本日のメニュー 1)前回の課題について 2)構造化プログラム(選択構造) 3)等価演算子、関係演算子、条件演算子 4)課題・提出 PE04-05.ppt PE04-05.ppt

第2章までの総合演習(前回の課題) (1)画面に、『本日は晴天なり』と表示するプログラムを書いてみよう。 (2)単位を互いに換算するプログラムを書いてみよう。 (a)センチ(cm)とインチの換算[1インチ=2.54cm] (b)ドル($)と円(\)の換算[1$=\109.5] (c)摂氏C(℃)と華氏F(°)の換算 F

解答例:文字の表示(1) #include <stdio.h> int main(void) { printf("本日は晴天なり\n"); return(0); } puts("本日は晴天なり"); 以下の解答例では"おまじない"部分は略

解答例:単位の換算(2.a) double cm, inch; puts("cm?");scanf("%lf",&cm); inch = cm/2.54; printf("%6.2fcmは%6.2fインチです\n", cm, inch); puts("インチ?");scanf("%lf",&inch); cm = 2.54*inch; printf("%6.2fインチは%6.2fcmです\n", inch, cm);

解答例:単位の換算(2.b) double dl, en; printf("$?");scanf("%lf",&dl); en = dl*109.5; printf("$%6.2fは¥%6.2fです\n", dl, en); printf("¥?");scanf("%lf",&en); dl = en/109.5; printf("¥%6.2fは$%6.2fです\n", en, dl);

解答例:単位の換算(2.c) double c, f; printf("摂氏温度は?"); scanf("%lf",&c); printf("華氏で、%6.2fです\n",f); printf("華氏温度は?"); scanf("%lf",&f); c = 5.0*(f-32.0)/9.0; printf("摂氏で、%6.2fです\n",c); 5/9*(f-32)

int main(void) { double f, c ; 5/9と書くと、 puts("123456 朝日太郎"); プログラミング演習('04) int main(void) { double f, c ; puts("123456 朝日太郎"); printf("華氏温度は?"); scanf("%lf",&f); c = (5.0/9.0)*(f-32.0); printf("摂氏温度 %f です。",c); printf("摂氏温度は?"); scanf("%lf",&c); f = (9.0/5.0)*c + 32.0; printf("華氏温度 %f です。",f); return(0); } 2018/11/7 5/9と書くと、 0.55…ではなく、 ゼロになる (整数演算) 9/5と書くと、 1.8ではなく、 1 になる (整数演算) PE04-05.ppt

第2章までの総合演習(前回の課題) (3)単価 a 円のハンバーガーを n 個買い、 y 円札を出したら、お釣りはいくらになるでしょう? この計算をするプログラムを書いてみよう。 (4)上底a、下底b、高さh の台形の面積 S を計算するプログラムを書いてみよう。

解答例:ハンバーガーの問題(3) int a, n, y, turi; printf("単価?");scanf("%d",&a); printf("個数?");scanf("%d",&n); printf("お札の金額?"); scanf("%d",&y); turi = y – a*n; printf("お釣りは %6d 円です\n",              turi);

解答例:面積計算(4) double a, b, h, s; printf("上底、下底、高さは?"); プログラミング演習('04) 2018/11/7 解答例:面積計算(4) double a, b, h, s; printf("上底、下底、高さは?"); scanf("%lf %lf %lf",&a,&b,&h); s = (a + b) * h / 2.0; printf("面積は、%6.2f です。\n", s); PE04-05.ppt

ファイル名:hw4-****.c hw4-****.exe プログラミング演習('04) 2018/11/7 前回の宿題 ◎キーボードから整数部分2桁、小数点以下2桁の値を入力し、それぞれの桁の数値とそれらの合計、平均値(小数点以下2桁)を求めよ。 ◎教科書演習2-6(33頁) 数値=> 65.42 十の位は 6 一の位は 5 十分の1の位は 4 百分の1の位は 2 合計は 17 平均は 4.25 ファイル名:hw4-****.c hw4-****.exe 締め切り: 5月15日(土) 午後1時 リストの提出は、オープン利用室のレポート入れ aucopy でのファイル転送フォルダーは、 [森下伊三男]-[プログラミング演習] PE04-05.ppt

直接に i=z*100.0 と記述しても良い int i, a,b,c,d ; double x, z ; プログラミング演習('04) 2018/11/7 int i, a,b,c,d ; double x, z ; printf("浮動小数点数を入れよ===>"); scanf("%lf",&z); z = z * 100.0; i = z; a = i / 1000; b = ( i % 1000) / 100 ; c = ( i % 100) / 10 ; d =   i % 10 ; x = (a+b+c+d) / 4.0; ・・・ 内部表現は 65.4199999・・・ となっている可能性あり 65.42 6542.000 6542 100倍すると 6541.9999・・ 6 6542 5 542 この場合、iは6541となる 4 42 2 6542 対応策:四捨五入 i=z*100.0+0.5; 直接に i=z*100.0 と記述しても良い PE04-05.ppt

解答例:演習2-6 int h; double w; printf("身長を入力してください:"); scanf("%d", &h); プログラミング演習('04) 2018/11/7 解答例:演習2-6 int h; double w; printf("身長を入力してください:"); scanf("%d", &h); w = ( h – 100.0 ) * 0.9; printf("標準体重は%.1fです。\n",                  w); PE04-05.ppt

課題についての注意 ・数学的な問題 → 式の変形ができない(問題外) を変形すると ・c=5/9*(f-32); f=9/5*c+32; と書くと、  結果がおかしくなる。 次の場合ならば良い。 c=(f-32)*5/9; f=c*9/5+32;  (整数型)(*/+-%)(整数型) → (整数型)  演算は括弧内が優先で、左から行われる ・かけ算の式で*を忘れる 5/9(kashi-32) → 5.0/9.0*(kashi-32)

課題についての注意 ・インチ-センチ、ドル-円の変換で、利用する式を逆に使っている ・出力例や簡単な場合の結果を参考に、必ず実行結果をチェックする事。 ・途中まででも、リスト出力を必ず提出する事。 ・*.C のファイルの拡張子を *.exe に書き換えてファイル転送している → パソコン停止 .exe ファイルはコンパイルが完了すると自動的に生成されるファイルである。 ・問題を良く読む→演習2-6:整数値を入力する

構造化プログラミング どの構造も入口と出口 が一つだけ 選択構造 繰り返し(反復)構造 順次構造 ・二者択一、 複数場合分け B 判断 A true false 順次構造 選択構造 ・二者択一、 複数場合分け ・if文、switch文 A B 繰り返し(反復)構造 ・定数回繰り返し、前判断、後判断 ・for文、while文、do-while文 判断 A true false どの構造も入口と出口 が一つだけ

選択構造 ・条件判断によって処理を選択していく構造 ・判断の結果は 非0 : true(Yes) または 0 : false(No) ・trueの場合にはAを、 falseの場合には Bを実行する B 条件判断 A true false 菱形の中:0又は非0の結果を持つ式

関係演算子と等価演算子(p.42-) 関係演算子:値の大小関係を比較する 関係成立:1(true)、不成立:0(false) a < b aがbより小さいなら 1(条件成立) a <= b aがbより小さいか又は等しいなら 1 a > b aがbより大きいなら 1 a >= b aがbより大きいか又は等しいなら 1 等価演算子:値が等しいかどうかを判定する   関係成立:1(true)、不成立:0(false) a == b aとbが等しいなら 1 a != b aとbが等しくないなら 1

条件演算子(p.48-) 条件判断によって式を選択していく構造 if文と似た構造を持った式を記述 3項演算子 式1 ? 式2 : 式3 式3 プログラミング演習('04) 2018/11/7 条件演算子(p.48-) 条件判断によって式を選択していく構造 if文と似た構造を持った式を記述 3項演算子 式1 ? 式2 : 式3 式3 式1 式2 true false 式 の 値 式1 が非0 式1 が0 式2の値 式3の値 PE04-05.ppt

今日の課題 教科書の各演習を順に処理していくプログラムを作成せよ。 (1)演習3-1(41頁)、演習3-3(45頁)、 演習3-4(45頁) プログラミング演習('04) 2018/11/7 今日の課題 教科書の各演習を順に処理していくプログラムを作成せよ。 (1)演習3-1(41頁)、演習3-3(45頁)、 演習3-4(45頁) (2)[発展](時間に余裕の有る人は進む) 演習3-2、演習3-5~演習3-8 ファイル名は en5-****.c ファイル名の **** は学籍番号の二桁目と下3桁 例:学生番号 034987 ならば xxx-3987.c PE04-05.ppt

今日の提出 1)プログラムリストを提出する。 2)aucopyで en5-****.c を転送する。 今日の課題の各演習について、できたところまでのリストを印刷して提出する  (途中まででも、必ず提出すること) なお、授業中にできなかった演習は、各自で必ず完成させること。 2)aucopyで en5-****.c を転送する。 3)aucopyで en5-****.exe を転送する。 .C の拡張しを変えて .exe を作らないこと ファイル名の **** は学籍番号の二桁目と下3桁 例:学生番号 034987 ならば xxx-3987.c

ファイル名:hw5-****.c hw5-****.exe プログラミング演習('04) 2018/11/7 今回の宿題 ◎3つの整数を入力し、最大値と最小値を表示するプログラムを作れ。[46~47頁を参考に] 整数を入力? 8 5 2 最大値は 8 です。 最小値は 2 です。 整数を入力? 8 5 2 4 9 最大値は 9 です。 最小値は 2 です。 {発展問題}入力する整数が五つの場合。 ファイル名:hw5-****.c hw5-****.exe 締め切り: 5月22日(土) 午後1時 リストの提出は、オープン利用室のレポート入れ aucopy でのファイル転送フォルダーは、 [森下伊三男]-[プログラミング演習] PE04-05.ppt

次回(第6回)の プログラミング入門、 プログラミング演習は プログラミング演習('04) 2018/11/7 第5回終了 次回(第6回)の プログラミング入門、 プログラミング演習は 5月25日です。 PE04-05.ppt