情報科学演習 宿題 2011.12.12

Back


1行に100以下の正の整数の乱数を10個表示することを10回繰り返す.以下のように,各行の 最後にその行の数の合計を求め,さらにその合計が501以上のときに over と表示する.ま た,最後に over を超えた回数を表示するようにせよ.

結果の表示は文字の配置や空行の挿入についても以下のようになるもの とし,1 行目に必ず自分の学生番号を表示するよ うにすること.また,末尾にハイフンによるライン を引いておくこと.

My student number: s114099

  3  41  26  60  35  69  43  28  43  61   409
 19  15  19  68  84  20  93  13  33  51   415
100  80  86  86  95   9  87  50  16  21   630  over
 23  19  14  48  30  48  68  72  75  63   460
 84  45  29   2  13  13  74  57  25  58   400
 59  76  89  96  13  84   4 100  33  72   626  over
 72  55  42  85  54  71  32  21  42  59   533  over
 83  77   3  12  31  67  76   4  75  52   480
 61  33  27  50  80  40  85  84  39  17   516  over
  7  62  23  48  47  76  18  30  48  11   370

Number of "over" displayed: 4

------------------------------

解答例

/* ************************************************** */
/*                                                    */
/*      情報科学演習 C6 C7                            */
/*      レポート課題                                  */
/*      2011.12.12                                    */
/*                                                    */
/* ************************************************** */
/*                                                    */
/*      学生番号:                                    */
/*                                                    */
/*      氏名:                                        */
/*                                                    */
/* ************************************************** */
/*                                                    */
/*      この行以降に解答のプログラムを書くこと        */

#include <stdio.hgt;
#include <stdlib.h>
#include <time.h>

main()
{
	srand((unsigned) time(NULL));
	
	int i, j, sum, count=0, num;
	
	printf("My student number: s114099\n\n");

	for(i=1; i<=10; i++){
		sum = 0;
		
		for(j=1; j<=10; j++){
			num = rand() % 100 + 1;
			sum += num;
					
			printf("%3d ", num);
		}
		
		printf("%5d", sum);
		
		if(sum>=501){
			printf("  over");
			count++;
		}
		
		printf("\n");
		
	}	
	
	printf("\nNumber of \"over\" displayed: %d\n\n", count);
	printf("------------------------------\n\n");
	
	return(0);
}


Back