ТОР 5 статей: Методические подходы к анализу финансового состояния предприятия Проблема периодизации русской литературы ХХ века. Краткая характеристика второй половины ХХ века Характеристика шлифовальных кругов и ее маркировка Служебные части речи. Предлог. Союз. Частицы КАТЕГОРИИ:
|
Примеры решения задач с использованием двухмерных массивовДвухмерные массивы имеют строки и столбцы. Элемент массива задается номером строки и номером столбца, на пересечении которых он находится
Если количество строк = количеству столбцов массив называется квадратной матрицей, в противном случае - прямоугольной.
Задана прямоугольная матрица размера 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 {Нахождение суммы первого столбца}
max:= s; k:=1; j:=3; while j <= m do begin s:= 0;
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. Задания для самостоятельной работы: 8. Имеется целочисленный массив n*m элементов. Найти номер строки с минимальной суммой модулей элементов. 9. Имеется целочисленный массив n*m элементов. Найти индексы максимального элемента таблицы и значение максимума. 10. Имеется целочисленный массив n*m элементов. Каких элементов в массиве больше отрицательных или положительных? 11. Имеется целочисленный массив n*m элементов. Сообщить есть ли в таблице отрицательные элементы. 12. Имеется целочисленный массив n*m элементов. Найти среднее арифметическое элементов массива. Определить и вывести количество элементов массива, значение которых превышает это среднее значение.
Литература 1. Карасев П.Н. Информатика (программирование).-Волгоград, 2002. 2. Брудно А.Л. Каплан Л.И. Олимпиады по программированию.- М., 1985. 3. Грогоно П. Программирование на языке Паскаль/Пер. с англ.- М., 1982. 4. Каймин В.А. и др. Основы информатики и вычислительной техники (пробный учебник для 10-11 классов).-М., Просвещение, 1994. 5. Культин Н. Turbo Pascal в задачах и примерах.-Санкт-Петербург, БХВ-Петербург, 2002. 6. Немнюгин С.А. Turbo Pascal(практикум).-Санкт-Петербург, 2001. 7. Златопольский Д.М. Я иду на урок информатики (задачи по программированию 7-11 классы).-М., Первое сентября, 2002.
Не нашли, что искали? Воспользуйтесь поиском:
|