Transcript 繰り返し計算
高度プログラミング演習 (03) 演習送付先 • 3時間目 [email protected] • 4時間目 [email protected] • 次の講義までに送ること。 – 日付、時間の別(3時間目か4時間目か)を必ず 明記すること。 演習問題 • 台形の上底、下底、高さを入力してその面 積を出力するプログラムを作成せよ。 #include <stdio.h> void main() { int jotei=0,katei=0,takasa=0; printf(“ Jotei Katei Takasa ?“); scanf(“%d %d %d”,&jotei,&katei,&takasa); printf(“ Menseki = %d \n”, (jotei + katei)*takasa/2); } 小数点を扱う変数 #include <stdio.h> void main() { double num1=10; int num2=10; printf(“%f \n”,num1/3); printf(“%d \n”,num2/3); } 台形の面積 #include <stdio.h> void main() { double jotei=0,katei=0,takasa=0; printf(“ Jotei Katei Takasa ?“); scanf(“%lf %lf %lf”,&jotei,&katei,&takasa); printf(“ Menseki = %f \n”, (jotei + katei)*takasa/2); } 演習問題 • 5つの整数を入力して、その総和と平均値 を出力するプログラムを作成せよ。 #include <stdio.h> void main() { int n0=0,n1=0,n2=0,n3=0,n4=0; printf(“ Input 5 numbers“); scanf(“%d %d %d %d %d”,&n0,&n1,&n2,&n3,&n4); printf(“ Sum = %d \n”, n0+n1+n2+n3+n4); printf(“ Av = %d \n”, (n0+n1+n2+n3+n4)/5); } 演習問題 • 3けたの2進数を入力してそれを10進数で 出力するプログラムを作成せよ。 #include <stdio.h> void main() { int num=0,k4=0,k2=0,k1=0; printf(“ Input num by binary ?“); scanf(“%d ”,&num); k4 = num/100; k2 = (num-k4*100)/10; k1 = (num-k4*100-k2*10); printf(“ Decimal = %d \n”,k4*4+k2*2+k1); } 繰り返し計算 • 1から10までの累積和を求めるプログラム。 #include <stdio.h> void main() { int sum=0; sum = 1+2+3+4+5+6+7+8+9+10; printf(“%d\n”,sum); } • 指定された数字から指定された数字までの 総和を求めるプログラム??? 繰り返し計算 • for 文 for (初期条件; 繰り返し計算が続く条件; 変化) { } #include <stdio.h> void main() { int sum=0,i=0; for(i=1; i<11; i++) { sum = sum + i; } printf(“%d\n”,sum); } 繰り返し計算 • 1から指定された数字までの総和を求めるプ ログラム #include <stdio.h> void main() { int sum=0,i=0,n=0; printf(“ N= “); scanf(“%d”,&n); for(i=1; i<n+1; i++) { sum = sum + i; } printf(“%d\n”,sum); } 練習問題 • 指定された数字から指定された数字までの 累積和を求めるプログラムを作成せよ。 繰り返し計算 その2 • while 文 while (計算が続く条件) { } #include <stdio.h> void main() { int sum=0,i=0,n=0; printf(“ N= “); scanf(“%d”,&n); while(i<n+1) { sum = sum + i; i = i + 1; } printf(“%d\n”,sum); } 練習問題 • 指定された数字から指定された数字までの 累積和を求めるプログラムを while 文を用い て作成せよ。 演習問題 1. 2. 3. 4. 5. 入力した数字の階乗を求めるプログラムを作成せよ。 ある数字は1日ごとに倍になるとする。入力した数字が、 入力した日数後にいくらになっているかを表示するプログ ラムを作成せよ。 1年 0.2% の利子がつく複利預金で、入力したお金が入力 した年数後いくらになっているか表示するプログラムを作 成せよ。 上記の複利計算で入力した金額に達する年を求めるプロ グラムを作成せよ。 入力した10進数を2進数で表示するプログラムを作成せ よ。