|
|||
ЛАБОРАТОРНАЯ РАБОТА 6. РАБОТА С МАТРИЦАМИ. КРАТКИЕ СВЕДЕНИЯ ИЗ ТЕОРИИ. А Л Г О Р И Т М. П Р О Г Р А М М А. А Л Г О Р И Т М. П Р О Г Р А М М АСтр 1 из 3Следующая ⇒ ЛАБОРАТОРНАЯ РАБОТА 6
РАБОТА С МАТРИЦАМИ
ЦЕЛЬ РАБОТЫ: Научиться составлять алгоритмы и программы для обработки двумерных массивов.
КРАТКИЕ СВЕДЕНИЯ ИЗ ТЕОРИИ
Двумерный массив состоит из элементов с двумя индексами: один показывает номер столбца в массиве, другой - номер строки. В Турбо-Паскале возможны массивы и большей размерности. Для их описания возможны два подхода: а) массив рассматривается как массив других массивов: type x=array[1.. 100] of real; y=array[1.. 2] of x; или type y=array[1.. 100, 1.. 2] of real;
б) массив рассматривается как многоиндексный type y=array [ 1... 100, 1... 2 ] of real;
Оба описания равноценны.
ПРИМЕР 1: Получить матрицу, элементами которой являются произведения номеров строк i и номеров столбцов j.
А Л Г О Р И Т М
алг таблица умножения рез р: цел таб [1.. 9, 1.. 9] раб i, j: цел нач нцдля i от 1 до 9 нцдля j от 1 до 9 р[i, j]: =i*j вывод p[i, j] кц кц
П Р О Г Р А М М А
program umnog; type mat=array[1.. 9, 1.. 9] of integer; var i, j: integer; p: mat; begin for i: =1 to 9 do begin for j: =1 to 9 do begin p[i, j]: =i*j; write (p[i, j]: 3) end; writeln; end end.
ПРИМЕР 2: Из матрицы А[3, 4] получить вектор В, элементами которого являются наибольшие элементы столбцов матрицы.
А Л Г О Р И Т М
алг массив максимумов арг а: вещ таб [1.. 3, 1.. 4] рез b: вещ таб [1.. 4] раб i, j: цел нач нцдля i от 1 до 3 нцдля j от 1 до 4 ввод a[i, j] кц кц нцдля j от 1 до 4 b[j]: =a[1, j] нцдля i от 2 до 3 если b[j]< a[i, j] то b[j]: =a[i, j] все кц вывод b[j] кц кон П Р О Г Р А М М А
program mag_max; type x=array[1.. 3, 1.. 4] of integer; y=array[1.. 4] of integer; var i, j: integer; a: x; b: y; begin writeln ('Введите матрицу А'); for i: =1 to 3 do begin for j: =1 to 4 do begin read(a[i, j]); write (' ') end; writeln end; writeln ('Массив В'); for j: =1 to 4 do begin b[j]: =a[1, j]; for i: =2 to 3 do if b[j]< a[i, j] then b[j]: =a[i, j]; write(b[j]: 4) end end.
|
|||
|