第5回の演習の解答例

(1)1から,入力した値 n までの和を求めるプログラムを,while文を用いて作成せよ

解答例:


#include <stdio.h>

void main()
{
    int i, n, a;

    printf ("n= " );
    scanf ( "%d", &n );

    a = 0;
    i = 1;

    while ( i <= n ) {

        a += i;

        i++;
    }
    
    printf ( "%d¥n", a );
    
}



(2)現在の時刻(何時何分何秒)をキーボードから入力して画面に表示し、その時間から好きな秒数を    キーボードから入力すると,その秒数を足した時刻が表示されるようなプログラムを作成せよ      *ただし、while文とカウンタを用いること*

解答例:


#include <stdio.h>

void main()
{
    int hour, minute, second;
    int i,second2;

    printf("何時間?");
    scanf("%d", &hour);

    printf("何分?");
    scanf("%d", &minute);

    printf("何秒?");
    scanf("%d", &second);

    printf("%d時間%d分%d秒¥n",hour,minute,second);

    printf("好きな秒数を入力してください\n");
    scanf("%d", &second2);

    i = 1;

    while ( i <= second2 ) {

        second += 1;

        if(second==60){
				minute +=1;
                second = 0;
        }

		if(minute==60){
				hour += 1;
                minute = 0;
	}

        i++;
    }

    printf("その秒数を足した時刻は%d時間%d分%d秒です¥n",hour,minute,second);

}

(3)以前作成した九九の九の段を表示するプログラムを作成せよ    ヒント:カウンタを上手に使うとプログラムがシンプルに作成できる

解答例:


#include <stdio.h>

#include 

void main()
{
    int i;

    i = 0;

    while ( i < 9 ) {

        printf("9×%d=%d¥n",i+1,9*(i+1));

        i++;
    }


}



(4)一万円を年利1.0%の定期預金に預けた場合のn年後の預金額を計算せよ    以下の複利計算の公式を利用し,計算年数nはキーボードから入力した値を使用せよ    ここでは,Aを預金額,rを年利とする [預金額と金利の関係] 1年後 A(1+r) 2年後 A(1+r)(1+r) = A(1+r)2 3年後 A(1+r)(1+r)(1+r) = A(1+r)3 .. .. ..

解答例:



#include <stdio.h>

void main()
{
    int i, n;
	int money;

	printf("何年後?");
	scanf("%d",&n);

    i = 0;
	money = 10000;

    while ( i < n ) {

        money  *= (1+0.01);

        i++;

    }

	printf("%d年後の預金額は%dです¥n",n ,money);


}

(5)掛け算の九九を一から九の段まですべて表示するプログラムを作成せよ

解答例:



#include <stdio.h>

void main()
{
    int i, j;

    i = 0;

    while ( i < 9 ){

        j = 0;

    	while ( j < 9 ) {

        printf("%d×%d=%d¥n",i+1,j+1,(i+1)*(j+1));

        j++;

    	}

   i++;

   }

}