Примеры задач
Двумерные массивы
Найти число элементов в каждой строке, больших среднего арифметического элементов данной строки. Методика решения
Используемые переменные:
А - двумерный массив;
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.