Как сделать матрицу в паскале
Перейти к содержимому

Как сделать матрицу в паскале

Как сделать матрицу в паскале

CONST — слово, которое «говорит» программе, что далее будут объявлены константы
kol_strok — переменная, в которой будет храниться количество строк
kol_stolbcov — переменная, в которой будет храниться количество столбцов
VAR — слово, которое «говорит» программе, что далее будут объявлены переменные, которые используются в программе, и их тип
A — массив, содержащий kol_strok строк kol_stolbcov столбцов, состоящий из REAL (действительных чисел)
i,j — INTEGER (целочисленные) переменные
BEGIN — начало программы
for i:=1 to kol_strok do — «для i от 1 до kol_strok делать» , т.е. следующий оператор будет выполняться для i=1,2,3. kol_strok
for j:=1 to kol_stolbcov do — «для j от 1 до kol_stolbcov делать» , т.е. следующий оператор будет выполняться для j=1,2,3. kol_stolbcov
Read(A[i,j]) — запрос на ввод значения элемента матрицы А, стоящего на пересечении i-ой строки и j-го столбца
END. — конец программы

Автоматическое случайное присваивание значений из промежутка [-100;100]:

CONST
kol_strok=5;
kol_stolbcov=4;
VAR
A:array[1..kol_strok,1..kol_stolbcov] of integer;
i,j:integer;
BEGIN
Randomize;
for i:=1 to kol_strok do
for j:=1 to kol_stolbcov do
A[i,j]:=Random(101)-Random(101);
END.

Randomize; — нужно, чтобы при использовании Random получались разные значения
Random(101) — случайное целое из промежутка [0;101)

for i:=1 to kol_strok do
begin
for j:=1 to kol_stolbcov do
Write(A[i,j]:4:2,’ ‘);
Writeln;
end;

Write(A[i,j]:4:2,’ ‘) — вывод на экран элемента матрицы А, стоящего на пересечении i-ой строки и j-го столбца, 4 позиции для числа, 2 позиции после запятой и пробел
Writeln — переход на следующую строку

Матрицы в Pascal

Распространённое понятие в программировании. Матрицы имеют огромное поле для их применения.

Матрицы в программировании рассматриваются как двумерный массив. Это массив состоящих из нескольких строк и столбцов.

Реализация матрицы в Pascal

Доступ к элементам матрицы осуществляется по номеру строки и номеру столбца. В программе это реализуется с помощью вложенного цикла.

Матрицу можно обрабатывать как по строкам, так и по столбцам.

Для матрицы справедливы те же алгоритмы, что и для одномерных массивов. Необходимо помнить только о том, что доступ к элементам осуществляется по двум индексам в цикле.

Как сделать матрицу в паскале

Двумерный массив в Паскале трактуется как одномерный массив, тип элементов которого также является массивом (массив массивов). Положение элементов в двумерных массивах Паскаля описывается двумя индексами. Их можно представить в виде прямоугольной таблицы или матрицы.
Рассмотрим двумерный массив Паскаля размерностью 3*3, то есть в ней будет три строки, а в каждой строке по три элемента:

Каждый элемент имеет свой номер, как у одномерных массивов, но сейчас номер уже состоит из двух чисел – номера строки, в которой находится элемент, и номера столбца. Таким образом, номер элемента определяется пересечением строки и столбца. Например, a 21 – это элемент, стоящий во второй строке и в первом столбце.

Описание двумерного массива
Пример описания двумерного массива Паскаля

var a: array [1..n, 1..m] of < тип элементов >;

В примере объявлен двумерный массив Паскаля a, состоящий из n строк, в каждой из которых m столбцов. При этом к каждой i -й строке можно обращаться m[i], а каждому j -му элементу внутри i -й строки – m[i,j].
Обращение к элементам двумерного массива имеет вид: a [i,j]. Обращение происходит к элементу, расположенному в i -й строке и j -м столбце.

Ввод двумерного массива

Для последовательного ввода элементов одномерного массива применялись циклы, в которых изменяли значение индекса с 1-го до последнего. Положение элемента в двумерном массиве Паскаля определяется двумя индексами: номером строки и номером столбца. Это значит, что необходимо последовательно изменять номер строки с 1-й до последней и в каждой строке перебирать элементы столбцов с 1-го до последнего. Для этого потребуются два цикла for или while , причем один из них будет вложен в другой.
Ввод двумерного массива с клавиатуры:

const n=5; m=10;
var a: array [1.. n , 1.. m ] of integer;
i, j: integer; < индексы массива >
begin
for i :=1 to n do <цикл для перебора всех строк>
for j :=1 to m do

Вывод двумерного массива Паскаля

Вывод элементов двумерного массива Паскаля также осуществляется последовательно, необходимо напечатать элементы каждой строки и каждого столбца.
Вывод двумерного массива в строку :

Вывод можно осуществить и в столбик с указанием соответствующего индекса. Но в таком случае нужно учитывать, что при большой размерности массива все элементы могут не поместиться на экране и будет происходить скроллинг, т.е. при заполнении всех строк экрана будет печататься очередной элемент, а верхний смещаться за пределы экрана.

Вывод двумерного массива в столбик:

Var
A: array [1..10, 1..10] of integer;
i, j : integer ; < переменная i,j вводятся как индекс массива >
Begin
For i:=1 to 10 do
For j :=1 to 10 do
Writeln (‘a[‘, i,j, ’]=’, a[i,j]); < вывод элементов массива в столбик >
readln;
end .

Вывод на экран элементов будет в следующем виде:

Вывод двумерного массива таблицей:

k — обычно выбирают на 1-2-3 символа больше чем само число, например: число 123 => k можно выбрать от 4 и более, если меньше, то числа будут сливаться или вообще не показываться(если n=0)

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *