Из строк матрицы сформировать по массиву - Pascal
Формулировка задачи:
Дан двумерный массив 5*5, преобразовать в 5 одномерных массивов, где каждая строка=>новый массив.
Решение задачи: «Из строк матрицы сформировать по массиву»
textual
Листинг программы
const m_max = 5; type TLine = Array[0..m_max - 1] Of ShortInt; procedure PrintLine(const l: TLine); var j: Byte; begin WriteLn; for j := 0 to m_max - 1 do Write(l[j]:4); WriteLn; end; var ar: Array[0..m_max - 1] Of TLine; a, b, c, d, e: TLine; i, j: Byte; begin Randomize(); for i := 0 to m_max - 1 do begin for j := 0 to m_max - 1 do begin ar[i, j] := Random(199) - 99; Write(ar[i, j]:4); end; WriteLn; end; a := ar[0]; b := ar[1]; c := ar[2]; d := ar[3]; e := ar[4]; PrintLine(a); PrintLine(b); PrintLine(c); PrintLine(d); PrintLine(e); end.
Объяснение кода листинга программы
- Объявление и инициализация константы
m_maxсо значением 5. - Определение нового типа
TLineкак массив из 5 элементов типа ShortInt. - Определение процедуры
PrintLine, которая принимает параметрlкак массив типаTLineи выводит его содержимое. - Объявление массив
arиз 5 элементов типаTLineи создание дополнительных переменныхa,b,c,d,eкак типTLine. - Объявление переменных
iиjкак Byte для использования в циклах. - Использование функции
Randomize()для инициализации генератора случайных чисел. - Вложенный цикл
forдля заполнения массиваarслучайными значениями и их вывода с помощьюWriteLn. - Присваивание первых пяти строк массива
arпеременнымa,b,c,d,e. - Вызов процедуры
PrintLineдля вывода содержимого каждой из переменныхa,b,c,d,e. Этот код генерирует и выводит случайные числа в виде матрицы, а затем выводит каждую строку матрицы в отдельности.