for i:=1 to n do
s := s + abs ( a[ i ,j ]);
if s max
then begin
max := s;
k:=j;
end;
j := j+2; {Переход к очередному нечетному
end; индексу столбца }
writeln( 'Номер столбца с максим. суммой модулей элементов =' ,
k, 'знач. макс.=', max);
end.
Задания для самостоятельной работы:
Имеется целочисленный массив n*m элементов. Найти номер строки с минимальной суммой модулей элементов.
Имеется целочисленный массив n*m элементов. Найти
индексы максимального элемента таблицы и значение
максимума.
Имеется целочисленный массив n*m элементов.
Каких элементов в массиве больше отрицательных или положительных?
Имеется целочисленный массив n*m элементов. Сообщить есть ли в таблице отрицательные элементы.
Имеется целочисленный массив n*m элементов. Найти среднее
арифметическое элементов массива. Определить и вывести
количество элементов массива, значение которых превышает
это среднее значение.
Изучаем “Массивы”
МОДУЛЬ 5_Блок № 3
Тема урока:
Двухмерные массивы: описание, ввод и вывод массивов по строкам.
Примеры решение задач с использованием двухмерных массивов..
Цель занятия:
Получить навыки разработки программ по работе с элементами двухмерного массива;
Практическая работа с массивами на компьютере.
Двухмерные массивы имеют строки и столбцы. Элемент массива задается номером строки и номером столбца, на пересечении которых он находится
Если количество строк = количеству столбцов массив называется квадратной матрицей, в противном случае - прямоугольной.
Задана прямоугольная матрица размера n строк и m столбцов.
Заполнить ее целыми числами. Распечатать по строкам. Найти и вывести сумму всех элесментов и их среднее арифметическое значение.
program zadacha5_3_1;
var
i, j, s,m,n : integer;
sr : real;
a:array[1..10, 1..20] of integer; {описание массива}
Begin
Write('Кол. строк, кол. столбцов?');
readln( n,m);
for i:=1 to n do
for j:=1 to m do
begin
write('Введите a[', i , ',' , j , ']'); {Ввод элементов
readln (a[ i, j ]); массива}
end;
writeln('Введённый массив');
for i:=1 to n do {Вывод эл. Массива}
begin
for j:=1 to m do
write (a[ i, j ],’ ’); {Вывод эл. массива}
writeln;
end;
s:=0;
for i:=1 to n do
for j:=1 to m do {Нахождение суммы}
s:=s + a[ i , j ];
writeln('Сумма =', s);
sr:=s / (n*m); {Нахождение среднего}
writeln('Средее =', sr:8:3)
End.
Задача.
Среди нечетных столбцов заданной целочисленной матрицы размерностью n*m найти столбец с максимальной суммой модулей элементов.
program zadacha5_3_2;
var
i, j, m, n, k, s, max :integer;
a : array[1..10, 1..20] of integer; {описание массива}
Begin
Write('Кол. строк, кол. столбцов?'); readln( n,m);
{Заполнить таблицу}
{Вывести таблицу по строкам}
{Первоначально будем считать сумму модулей элементов первого столбца максимальной}
s:=0;
for i:=1 to n do {Нахождение суммы первого столбца}
-3 | 4 | 6 | 8 | 1 |
4 | 9 | -12 | -6 | 13 |
3 | -5 | 2 | 7 | -5 |
10 18 20 21 19
max сумма мод. Неч. стол. = 20
номер столбца = 3
s := s + abs ( a[i, 1]);
max := s ;
k:=1; j :=3;
while j
begin
s := 0;