Сформировать матрицу из элементов одномерного массива - Free Pascal
Формулировка задачи:
сформировать случайный одномерный массив А из 6 элементов. переслать все числа из одномерного массива А в двумерный массив В[2,3] Полученный двумерный массив вывести на экран как таблицу 2*3.
Решение задачи: «Сформировать матрицу из элементов одномерного массива»
textual
Листинг программы
var a:array[1..6] of integer; b:array[1..2,1..3] of integer; i,j:integer; begin randomize; write('A:['); {заполняем одномерный массив, печатаем его} for j:=1 to 6 do begin a[j]:=random(199)-99; write(a[j]:4); end; writeln(']'); {заполняем двумерный массив, печатаем его} writeln('Новый массив:'); for i:=1 to 2 do begin for j:=1 to 3 do begin b[i,j]:=a[j+(i-1)*3]; write(b[i,j]:4); end; writeln; end; readln; end.
Объяснение кода листинга программы
- Объявляются переменные: — a: одномерный массив из 6 элементов типа integer; — b: двумерный массив из 2 строк и 3 столбцов элементов типа integer; — i, j: целочисленные переменные для выполнения циклов.
- В блоке randomize инициируется генератор случайных чисел.
- Выводится сообщение
A:[
и начинается заполнение и печать одномерного массива a с помощью цикла for, где переменная j изменяется от 1 до 6. — Каждый элемент массива a инициализируется случайным числом от 0 до 198 (random(199)-99)). — Каждый элемент массива a выводится на экран в формате 4-х знаков (write(a[j]:4)). - Завершается печать одномерного массива и выводится пустая строка.
- Начинается заполнение двумерного массива b с помощью двух вложенных циклов for, где переменные i и j изменяются от 1 до 2 и от 1 до 3 соответственно. — Каждый элемент массива b инициализируется элементом массива a, взятым с индексом (j+(i-1)*3), т.е. элементы массива a выстраиваются в 2 строки по 3 столбца. — Каждый элемент массива b выводится на экран в формате 4-х знаков (write(b[i,j]:4)).
- Завершается печать двумерного массива и выводится пустая строка.
- Программа ожидает ввода данных с клавиатуры с помощью функции readln.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д