演算、整数型と浮動小数点型 第3回[平成16年4月27日(火)]:PN04ー03.ppt 今日の内容 1 復習 2 加減・乗除演算子

Slides:



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

変数とその種類 変数とは何か? → データ ( 数値 ) を入れておく 箱 1000 変数名とは何か? → 箱に付ける名前 xy 変数名 変数の種類 ( 変数の型 ) → 入れるデータによって箱の種類が異なる int char float double その他たくさん integer (
復習 配列変数の要素 5は配列の要素数 これらの変数をそれぞれ配列の要素と呼ぶ この数字を配列の添え字,またはインデックスと呼ぶ
復習 配列変数の要素 5は配列の要素数 これらの変数をそれぞれ配列の要素と呼ぶ この数字を配列の添え字,またはインデックスと呼ぶ
コンピュータープログラミング(C言語)(2) 1.文字列出力と四則演算 (復習) 2.関数と分割コンパイル
演算、整数型と浮動小数点型 第3回目 [4月27日、H.16(‘04)] 本日のメニュー 1)前回の課題・宿題 2)ファイルサーバの利用
応用理工学情報処理 第1回(2015年10月 5日) 月曜日担当 前島展也 Manaba
関数(1) 第11回 [6月29日、H.16(‘04)] 今日のメニュー 1 前回の課題 2 前回の宿題 3 いろいろな関数の演習 4 課題
コンピュータープログラミング(C言語)(2) 1.文字列出力と四則演算 (復習) 2.関数と分割コンパイル
初年次セミナー 第4回 整数と実数の取り扱い.
配列(2) 第10回[平成15年6月26日(木)]:PN03-10.ppt 今日の内容 1 素数を求める(教科書の例):復習
情報・知能工学系 山本一公 プログラミング演習Ⅱ 第7回 データの基本型 情報・知能工学系 山本一公
基礎プログラミングおよび演習 第9回
岩村雅一 知能情報工学演習I 第9回(C言語第3回) 岩村雅一
x y 復習 変数とその種類 変数名 数学の場合 未知数 「変数xに‥を代入し‥」 x = 5 x = 1.3
C言語 第2講 生物機能制御学講座 濱田 農学部7号館209室.
多重ループ 繰り返し構造:補足事項 第8回目 [6月12日、H.15(‘03)] 本日のメニュー 1)前回の課題について
第2回:Javaの変数と型の宣言 プログラミングII 2007年10月2日.
配列の扱い、探索 有効範囲と記憶域期間 第12回 [7月10日、H.15(‘03)] 今日のメニュー 1 前回の課題の復習
情報処理Ⅱ 第4回 2007年10月29日(月).
選択構造と条件判断 第5回目 [5月18日、H.16(‘04)] 本日のメニュー 1)前回の課題について 2)構造化プログラム(選択構造)
岩村雅一 知能情報工学演習I 第8回(後半第2回) 岩村雅一
プログラミング入門2 第2回 型と演算 条件分岐 篠埜 功.
ちょっとした練習問題① 配列iroを['R', 'W', 'R', 'R', 'W' , 'W' , 'W']を宣言して、「W」のときの配列の番号をprintfで表示するようなプログラムを記述しなさい。
プログラミング応用 printfと変数.
プログラミング入門2 第2回 演算と型 条件分岐 芝浦工業大学情報工学科 青木 義満
プログラミング演習I 2003年5月7日(第4回) 木村巌.
プログラミング入門2 第2回 型と演算 条件分岐 篠埜 功.
岩村雅一 知能情報工学演習I 第9回(後半第3回) 岩村雅一
高度プログラミング演習 (03).
岩村雅一 知能情報工学演習I 第8回(C言語第2回) 岩村雅一
第13章 文字の取り扱い方 13.1 文字と文字型変数 13.2 文字列 13.3 文字型配列への文字列の代入
第13章 文字の取り扱い方 13.1 文字と文字型関数 13.2 文字列 13.3 文字型配列への文字列の代入
岩村雅一 知能情報工学演習I 第10回(後半第4回) 岩村雅一
知能情報工学演習I 第8回( C言語第2回) 課題の回答
コンピュータープログラミング(C言語)(2) 1.文字列出力と四則演算 (復習) 2.関数と分割コンパイル
プログラミング基礎B 文字列の扱い.
岩村雅一 知能情報工学演習I 第9回(後半第3回) 岩村雅一
2013年度 プログラミングⅡ ~ 計算してみよう ~.
2015年度 プログラミングⅡ ~ 計算してみよう ~.
整数データと浮動小数データ.
岩村雅一 知能情報工学演習I 第9回(C言語第3回) 岩村雅一
情報処理Ⅱ 第2回:2003年10月14日(火).
C言語 はじめに 2016年 吉田研究室.
岩村雅一 知能情報工学演習I 第9回(後半第3回) 岩村雅一
地域情報学 C言語プログラミング 第2回 変数・配列、型変換、入力 2017年10月20日
x y 復習 変数とその種類 変数とは何か? →データ(数値)を入れておく箱 変数名 変数名とは何か?
復習 breakとcontinueの違い int i; for (i = 1; i <= 100; i++) { ・・・処理1・・・・
第13章 文字の取り扱い方 13.1 文字と文字型変数 13.2 文字列 13.3 文字型配列への文字列の代入
復習 breakとcontinueの違い int i; for (i = 1; i <= 100; i++) { ・・・処理1・・・・
情報処理Ⅱ 2005年10月28日(金).
プログラミング入門2 第2回 型と演算 条件分岐 篠埜 功.
標準入出力、変数、演算子、エスケープシーケンス
知能情報工学演習I 第8回(後半第2回) 課題の回答
cp-3. 計算 (C プログラミング演習,Visual Studio 2019 対応)
岩村雅一 知能情報工学演習I 第8回(後半第2回) 岩村雅一
岩村雅一 知能情報工学演習I 第8回(C言語第2回) 岩村雅一
プログラミング演習I 数値計算における計算精度と誤差
岩村雅一 知能情報工学演習I 第10回(後半第4回) 岩村雅一
情報処理Ⅱ 第2回 2004年10月12日(火).
第3回簡単なデータの入出力.
四則演算,変数 入力文,出力文,代入文, ライブラリ関数
プログラミング入門2 第5回 配列 変数宣言、初期化について
printf・scanf・変数・四則演算
第2章 数値の入力と変数 scanfと変数をやります.
知能情報工学演習I 第9回(後半第3回) 課題の回答
復習 いろいろな変数型(2) char 1バイト → 英数字1文字を入れるのにぴったり アスキーコード → 付録 int
情報処理Ⅱ 2006年10月27日(金).
変数と代入・読込と表示 第2回[平成15年4月24日(木)]:PN03ー02.ppt 今日の内容 1 プログラムの構造(復習)
岩村雅一 知能情報工学演習I 第9回(C言語第3回) 岩村雅一
Presentation transcript:

演算、整数型と浮動小数点型 第3回[平成16年4月27日(火)]:PN04ー03.ppt 今日の内容 1 復習 2 加減・乗除演算子 プログラミング入門('04) 2017/3/13 第3回[平成16年4月27日(火)]:PN04ー03.ppt 演算、整数型と浮動小数点型 今日の内容 1 復習 2 加減・乗除演算子 3 2項、単項演算子 4 浮動小数点型 5 浮動小数点型の入出力 6 今日の課題 PN04-03.ppt

皆さんの質問から pptの印刷を 忘れずに持参 して下さい! 変数名の中にキーワードが 含まれていても良いか? → OKです。例えば、if はキーワードですが、 taifu は変数名としてOKです。 scanf("%d,%d",&a,&b); という文で、,の意味がよく分からない。 → キーボードからの入力で、数値の直後に , を区切りとして入れるようにするか否かの指定です。 ,有りでの入力 ,無し 12, 13 12 13

サンプルプログラム(変数、代入) 復習 出力文 入力文 List1-12:二つの整数の入力と和の計算と表示 #include <stdio.h> int main(void){ int n1, n2; int wa; puts("two integers ? "); printf("整数1:"); scanf("%d",&n1); printf("整数2:"); scanf("%d",&n2); wa = n1 + n2; printf("それらの和は%dです。\n", wa); return(0); } 出力文 入力文 変数宣言 式と代入文 書式指定(見出し)

サンプルプログラム(演算) List2-1:二つの整数値の和・差・積・商・剰余の表示 int vx, vy; puts("以下に二つの整数を入力せよ"); scanf("%d %d", &vx, &vy); printf("vx + vy = %d\n", vx + vy); printf("vx - vy = %d\n", vx - vy); printf("vx * vy = %d\n", vx * vy); printf("vx / vy = %d\n", vx / vy); printf("vx %% vy = %d\n",vx % vy); return(0);

式の表現(加減、乗除演算子) 演算記号 複雑な式:カッコ( ) 足算:+ 引算:ー 掛算:* 4*3+2-5/2+3*2 → 割算:/ 剰余:% 複雑な式:カッコ( ) 4*3+2-5/2+3*2 →   (4*(3+2)-(5/2+3))*2→ 4+-3  → 10/3+2 → 10/3/2 → 10/3*2 → 10%4*-2→ 計算の順序 ( ) 符号のー */% +ー 同順位の場合、左から実行される

商と余りの計算について 余りの計算(剰余演算子 % ) (整数型)/(整数型) 整数化(切り捨て) プログラミング入門('04) 2017/3/13 商と余りの計算について (整数型)/(整数型) 整数化(切り捨て) 12/6 → , 13/5 → , (-5)/2 → 余りの計算(剰余演算子 % ) 12%6 → , 13%5 → , 3%7 → 9 % 4 →      -9 % 4 → 9 % -4 →     –9 % -4 → PN04-03.ppt

書式付きの出力文(複数の値) printf("1日は %d秒\n",24*60*60); 書式を指定 1日は 86400秒Ã 文字列はそのまま 書式を指定 変換指定子による変換 見出し付きの出力 となる 1日は 86400秒Ã ◎複数の値を見出し付きで出力するには? 例)変数 n1,n2,n3 の値を出力する

scanf("%d %d %d",&n1,&n2,&n3); 書式付きの出力文(複数の値) scanf("%d %d %d",&n1,&n2,&n3); それぞれ対応 12 31 15 それぞれ対応 printf( "n1=%d, n2=%d, n3=%d",n1,n2,n3); 出力結果 n1=12, n2=31, n3=15 printf("n1=%d, n2=%d",n1 ); printf("n1=%d, n2= ",n1,n2);

演習(商と剰余) n個のリンゴがある。これを一人につき4個づつ配ると、何人に配ることができるか。また、何個残るか? プログラムを完成させよ。 int n, ninzuu, nokori; printf("リンゴの数は:"); scanf( ); ninzuu = ; nokori = ; printf(" ", );

演習(商と剰余) 一箱に5個のリンゴが入る箱がある。今、n個のリンゴがある場合、何箱必要か? int main(void) { int hako, n; printf("リンゴの数は:"); scanf( ); = ; printf(" ", ); return(0); }

2項演算子:(オペランド)(演算子)(オペランド) 演算子の分類(オペランド数による) 加減演算子 足算:+  引算:ー 単純代入演算子 代入:= 乗除演算子 掛算:*  割算:/  剰余:% 2項演算子:(オペランド)(演算子)(オペランド) 単項+-演算子 符号不変:+ 符号反転:ー (演算子)(オペランド)

サンプルプログラム List2-6[変形]:整数と浮動小数点数 整数化 浮動小数点型 int nx; double dx; float fx; nx = 9.99; dx = 9.99; printf("int型 nx=%d\n", nx); printf(" nx/2=%d\n", nx/2); printf("double型 dx=%f\n", dx); printf(" dx/2.0=%f\n", dx/2.0); scanf("%f %lf", &fx, &dx); printf("fx=%f, dx=%f\n", fx, dx);

整数と浮動小数点数 整数[変換指定子:%d] short int : 2バイト(16ビット) -32,768 ~ 32,767 誤差なく内部表現される 10進数 → 2進数に変換 表現範囲が狭い(せいぜい10桁) 小数点以下は無い ( … -2 -1 0 1 2 …) short int : 2バイト(16ビット) -32,768 ~ 32,767 int, long int : 4バイト(32ビット)  -2,147,483,648~2,147,483,647 unsigned int : 4バイト(32ビット)    0 ~ 4,294,967,295

整数と浮動小数点数 ・浮動小数点数[変換指定子:%f,%lf,%Lf] 指数と仮数による内部表現:123.4→0.1234×103 表現範囲が広いが、誤差を伴う(有効桁数は数桁) 小数点がある: 1.23 12. .56 1.2e2 5E15 float : 4バイト 1.2×10-38 ~ 3.4×1038 [有効数字7桁] double : 8バイト 2.2×10-308 ~ 1.7×10308  [有効数字15桁] long double : 10バイト 3.4×10-4932 ~ 1.1×104932  [有効数字18桁] [入力:  、出力:  ]     [入力:   、出力:  ] [入力:   、出力:   ] %f  %f %lf     %f %Lf     %Lf

演習(整数型と浮動小数点型) 問. 数値として適当か。適当ならば、整数か浮動小数点数か述べよ。 (1) -666 (2) -666. 問. 数値として適当か。適当ならば、整数か浮動小数点数か述べよ。 (1) -666 (2) -666. (3) -666.0 (4) -.666e3 (5) 483.500 (6) 16667E+6 (7) -3e6 (8) .09E0.5

文字(%f)の代わりに 数値を数字にして出力 浮動小数点数を数字(数文字)として出力 printf("%f",1.5*2+1.8*4); 文字(%f)の代わりに 数値を数字にして出力 浮動小数点値 を与える計算式 人間が読める数文字 (小数点あり) として表示する 計算結果 → 10.2 パソコンのメモリ内では (0.102×102)10の浮動小数点数で表現されている %f による変換

演習 次のプログラムの誤りを正せ #include <stdio.h> int main(void) { double dx; printf("dxの値は?"); scanf("%f",dx); printf("%dの2倍は%f\n",dx,2.0*dx); return(0); }

演習 画面に、半径2.5の円の面積を表示するプログラムを完成せよ(値だけでよい)。 #include <stdio.h> int main(void) { printf(                  ); return(0); }

演習 半径rを入力し、その円周の長さを見出し付きで表示するプログラムを作成せよ。 #include <stdio.h> プログラミング入門('04) 2017/3/13 演習 半径rを入力し、その円周の長さを見出し付きで表示するプログラムを作成せよ。 #include <stdio.h> int main(void) { return(0); } PN04-03.ppt

変換指定子(%f,%lf,%Lf) float fx; double dx; long double ldx; 浮動小数点数の入力 float fx; double dx; long double ldx; scanf("%f %lf %Lf", &fx, &dx, &ldx); printf("fx=%f, dx=%f, ldx=%Lf", fx, dx, ldx); 処理システムに依存するので注意すること

演習(数値の入力) 問.次の様に変数が宣言されたとき、各変数へ入力する為のscanf関数を書け int a,b,c; float x,y,z; double p,q,r; (1) a  (2) x (3) q (4) a b c (5) a x y (6) p q x (7) c z r

演習(数値の見出し付き出力) 問.次の様に変数を見出し付きで出力する為のprintf関数を書け int a,b; float x,y; double p,q; (1) a b (2) a x y (3) p q x (4) b y q

今日の課題 箱の縦、横、高さを入力し、その箱の体積を出力するプログラムを作成せよ プログラミング入門('04) 2017/3/13 入出力はすべて浮動小数点型とする 今日の課題 箱の縦、横、高さを入力し、その箱の体積を出力するプログラムを作成せよ double length, width, height, volume; printf("縦、横、高さを入力せよ => "); scanf(" ",                               ); volume = ; printf("体積は    です。\n",       ); 提出用紙に質問・意見・感想・提案等も書いて下さい PN04-03.ppt

P入門(第3回)は 終了です。 次回(第4回)は 5月11日 プログラミング入門('04) 2017/3/13 P入門(第3回)は 終了です。 次回(第4回)は 5月11日 続いて、P演習に入ります。 では、しばらく休憩します。 PN04-03.ppt