Microsoft QBasic 1.0
Ввод данных заменен на инициализацию от датчика псевдослучайных чисел на интервале [-45;45]. Если нужен именно ввод, строку A(I)=RND...
замените на INPUT(A(I))
CONST n = 10
DIM a(1 TO n, 1 TO n) AS INTEGER
RANDOMIZE TIMER
CLS
PRINT "Матрица A"
FOR i = 1 TO n
FOR j = 1 TO n
a(i, j) = INT(90 * RND - 45)
PRINT USING "####"; a(i, j);
NEXT j
PRINT
NEXT i
k = 0
FOR i = 1 TO n
IF a(i, i) > 0 THEN k = k + 1
NEXT i
PRINT
PRINT "Количество положительных на ГД равно "; k
Пример выполнения программы
Матрица A
-33 43 -43 3 19 -43 28 19 32 27
-40 -4 -11 -27 -30 -7 35 19 24 0
-21 -43 30 10 -16 39 43 16 30 4
-39 40 13 3 -42 -5 -27 38 39 27
-26 34 -17 -26 12 36 21 23 28 -29
15 33 -44 -20 2 -36 -38 42 -44 -27
-10 -6 15 -17 -39 10 21 1 -6 32
-23 8 19 27 -19 -43 43 6 12 -18
-14 -39 8 -8 -4 18 44 6 -30 -24
9 -18 0 40 16 15 28 44 26 26
Количество положительных на ГД равно 6