【第5回】配列変数
【第5回】配列変数

例題14 1次元配列 「DIM」@
10人の生徒の点数を入力したとき、それらの平均値mを計算し、入力した数値からmを引いた数値を表示するプログラムを作れ。


(LIST)

1:  DIM a(1 TO 10)              '生徒10人の点数用配列

2:  sum=0

3:  FOR i=1 TO 10

4:    INPUT "点数を入力してください。";a(i)

5:    sum=sum+a(i)               '合計点の取得

6:  NEXT i

7:  m=sum/10                   '平均点 m=合計点/人数

8:  FOR i=1 to 10

9:    PRINT a(i)-m

10:  NEXT i

<類題14-1>10個の数値をを入力し、それらの値の2乗の平均値mを計算し、入力した数値の2乗からmを引いた数値を表示するプログラムを作れ。

(OUTPUT) ?24, 45, 56, 38, 59, 62, 13, 80, 39, 62  m=2639.3
-2110.3, -614.3, 496.7, -1195.3, 841.7, 1204.7, -2470.3, 37060.7, -1118.3, 1204.3

<類題14-2>10個の値を入力して、それらの最大値を求めるプログラムを作れ。

(OUTPUT) ? 38, 52, 65, 74, 59, 63, 94, 15, 62, 54  94

例題15 2次元配列 「DIM」A
5人の生徒の国語、数学、英語の3科目の点数を入力したとき、各生徒の点数と合計点、及び各科目の平均点を表示するプログラムを作れ。


(LIST)

1:  DIM a(1 TO 5,1 to 3)         '生徒5人の点数用配列

2:  DIM b(1 TO 3)

3:  FOR i=1 TO 5

4:    INPUT "国語の点数は?";a(i,1)

5:    INPUT "数学の点数は?";a(i,2)

6:    INPUT "英語の点数は?";a(i,3)

7:    PRINT a(i,1);a(i,2);a(i,3)          '各科目の点数の表示

8:    PRINT a(i,1)+a(i,2)+a(i,3)      '合計点の表示

9:  NEXT i

10:  FOR j=1 TO 3

11:    sum=0

12:    FOR i=1 to 5

13:      sum=sum+a(i,j)

14:    NEXT

15:    PRINT sum/5;          '各科目の平均点の表示

16:  NEXT

<類題15>10個の値を入力して、それらを大きいものから並べ替え、表示するプログラムを作れ。

(OUTPUT) ? 52, 34, 18, 60, 93, 40, 83, 21, 39, 56
93, 83, 60, 56, 52, 40, 39, 34, 21, 18