高度プログラミング演習 (04) 演習送付先 • 3時間目 [email protected] • 4時間目 [email protected] • 次の講義までに送ること。 – 日付、時間の別(3時間目か4時間目か)を必ず 明記すること。 演習問題(繰り返し計算) • 入力した数字の階乗を求めるプログラムを 作成せよ。 #include <stdio.h> void main() { int ans=1,num=0,i=0; scanf(“%d”,&num); for(i=0;i<num;i++) ans = ans * (i+1); printf(“%d ! = %d\n”,num,ans); } 演習(繰り返し計算) • ある数字は1日ごとに倍になるとする。入力した数字が、 入力した日数後にいくらになっているかを表示するプログ ラムを作成せよ。 #include <stdio.h> void main() { int num=0,day=0,i=0; scanf(“%d %d”,&num,&day); for(i=0;i<day;i++) num = num *2; printf(“%d\n”,num); } 演習問題(繰り返し計算) • 1年 0.2% の利子がつく複利預金で、入力したお金が入力 した年数後いくらになっているか表示するプログラムを作 成せよ。 #include <stdio.h> void main() { double money=0; int year=0,i=0; scanf(“%lf %d”,&money,&year); for(i=0;i<year;i++) money = money * 1.002; printf(“%f\n”,money); } 演習(繰り返し計算) • • 1年 0.2% の利子がつく複利預金で、入力したお金が入力 した年数後いくらになっているか表示するプログラムを作 成せよ。 上記の複利計算で入力した金額に達する年を求めるプロ グラムを作成せよ。 #include <stdio.h> void main() { double money=0,mokuhyo=0; int year=0; scanf(“%lf %lf”,&money,&mokuhyo); while(money<mokuhyo){ money = money * 1.002; year = year +1; } printf(“%d\n”,year); } 演習(繰り返し計算) • 入力した10進数を2進数で表示するプログラムを作成せ よ。 #include <stdio.h> void main() { int shin=0,num=0; scanf(“%d %d”,&shin,&num); while(num>shin-1){ printf(“%d “,num%shin);// num –(num/shin)*shin num = num/shin; } printf(“%d \n”,num); } 配列 • 100個の数字を扱いたい – int a[100]; • a[0] から a[99] までが有効。 • 2×2 の行列 – int a[2][2]; 乱数 • rand() • 100未満の数の乱数 – rand() % 100 • 100個の100未満の数の乱数を作る。 #include <stdio.h> #include <stdlib.h> void main() { int i=0; int data[100]; for(i=0;i<100;i++) data[i]=rand()%100; } 練習問題 1. 100未満の100個の乱数を作りその平均値 を求めるプログラムを作成せよ。 2. 10つの数字を入力してその平均値を求める プログラムを作成せよ。 3. 100個以下の任意の個数の正の整数を入 力してその平均値を求めるプログラムを作 成せよ。 printf() のけたそろえ • printf(“%5d %5d”,a,b); #include<stdio.h> void main() { int a=0,b=0; scanf(“%d %d”,&a,&b); printf(“%d %d\n”,a,b); printf(“%5d %5d\n”,a,b); } 練習問題 • 3×3 の行列の要素を100未満の乱数で作成 し、それをフォーマットをそろえて表示するプ ロラムを作成せよ。 78 98 9 4 12 11 23 1 1 78 98 9 4 12 11 23 1 1 練習問題 • 3×3 の行列と3×1の行列をそれぞれ入力で き、それらの行列の掛け算をするプログラム を作成せよ。 演習問題 1. 入力した2×2の行列の行列式の値を求め るプログラムを作成せよ。 2. 2つの3×3 の行列の各要素を入力でき、そ れらの行列の足し算および引き算をするプ ログラムを作成せよ。 3. 3×3 の行列と3×2の行列をそれぞれ入力 でき、それらの行列の掛け算をするプログラ ムを作成せよ。
© Copyright 2024 ExpyDoc