Примеры задач

Двумерные массивы


Найти число элементов в каждой строке, больших среднего арифметического элементов данной строки.

Методика решения

Используемые переменные:
А - двумерный массив;
N - переменная размерности массива;
I,j – индексы элементов массива;
S – вспомогательная переменная;
P – среднее арифметическое каждой строки;
L - количество элементов, удовлетворяющих условию.;

В цикле формируем случайным образом элементы массива и выводим полученный массив на экран.
Затем просматриваем строки массива с помощью цикла, подсчитываем сумму элементов в строке и делим её на количество элементов строки ( n ), таким образом находим среднее арифметическое элементов данной строки. Далее повторно просматриваем эту строку и сравниваем каждый её элемент со средним арифметическим. Если элемент удовлетворяет условию (больше среднего арифметического строки), то увеличиваем переменную L на единицу (перед просмотром строки L обнуляем).
После просмотра каждой строки выводим количество элементов, удовлетворяющих условию ( L ), на экран.

Листинг программы

Program ex3_5;
Uses Crt;
Var a:Array [1..10,1..10] Of Integer;
i,j,n,l,s:Integer;
p:Real;
Begin ClrScr;
Writeln('введите число n: ');
Readln(n);
Randomize; {задание массива случайным образом}
For i:=1 To n Do
For j:=1 To n Do a[i,j]:=-25+random(51);
For i:=1 To n Do
Begin
For j:=1 To n Do write(a[i,j]:5);
Writeln; {вывод массива на экран}
End;
s:=0; p:=0;
For i:=1 To n Do
Begin l:=0;
For j:=1 To n Do s:=s+a[i,j];
p:=s/n;
For j:=1 To n Do
Begin {нахождение чисел в массиве удовлетворяющих условию}
If a[i,j]>p Then l:=l+1;
End;
Writeln('количество элементов ',i,' строки = ',l);
End; {вывод найденного количества чисел в каждой строке на экран}
Readkey;
End.

Запустить программу






Назад