Двумерные массивы: ввод, вывод, генерация

Двумерные массивы: ввод, вывод, генерация

Ввод элементов массива A, содержащего N строк и M столбцов

Блок-схема

Программа

For i:=1 to N do

For j:=1 to M do

Begin

Write(‘A[‘, i, ‘,‘, j, ‘]=‘);

readln(A[i,j]);

End;

Вывод элементов массива A, содержащего N элементов

Блок-схема

Программа

For i:=1 to N do

Begin

For j:=1 to M do

Write(A[i, j]:4); {вывод в одну строку}

Writeln; { Переход на следующую строку }

End;

Генерация элементов массива A, содержащего N элементов

Для генерации элементов массива в Pascal используется функция Random.

Для генерации целых чисел в диапазоне от X1 до X2 (X1 < X2) можно воспользоваться следующим выражением

A[i,j]:=X1+Random(X2-X1+1);

Например, для генерации целых чисел от -10 до 10 выражение будет следующим

A[i,j]:=-10+Random(21);

Для генерации вещественны чисел в диапазоне от X1 до X2 (X1 < X2, X2 не входит в отрезок) можно воспользоваться следующим выражением

A[i,j]:=X1+(X2-X1)*Random;

Например, для генерации целых чисел от -10 до 10 выражение будет следующим

A[i,j]:=-10+20*Random;

Блок-схема

Программа

For i:=1 to N do

For j:=1 to M do

A[i,j]:=-10+Random(21);

После генерирования элементов массива они (элементы) обычно выводятся на экран, так они хранятся в оперативной памяти и пользователю программы не видны.

Двумерные массивы: поиск элемента

Поиск значения максимального элемента массива

Блок-схема

Программа

Max:=A[1,1];

For i:=1 to N do

For j:=1 to M do

If A[i,j]>Max Then Max:=A[i,j];

Поиск номера столбца (R) и строки (C) элемента массива, принимающего максимальное значение

Блок-схема

Программа

Max:=A[1,1];

R:=1; C:=1;

For i:=1 to N do

For j:=1 to M do

If A[i,j]>Max Then

Begin

Max:=A[i,j]; R:=i; C:=j;

End;

Двумерные массивы: вычисление суммы, количества, произведения элементов массива

Поиск суммы элементов массива, удовлетворяющих некоторому условию

Блок-схема

Программа

S:=0;

For i:=1 to N do

For j:=1 to M do

If <Условие> Then S:=S+A[i];

Поиск количества элементов массива, удовлетворяющих некоторому условию

Блок-схема

Программа

K:=0;

For i:=1 to N do

For j:=1 to M do

If <Условие> Then K:=K+1;

Например, дан массив из N вещественных чисел, найти количество отрицательных элементов.

Блок-схема

Программа

K:=0;

For i:=1 to N do

For j:=1 to M do

If A[i,j]<0 Then K:=K+1;

Поиск произведения элементов массива, удовлетворяющих некоторому условию

Блок-схема

Программа

P:=1;

For i:=1 to N do

For j:=1 to M do

If <Условие> Then P:=P*A[i,j];

Например, дан целочисленный массив из N чисел, найти произведение положительных элементов, меньших 10.

Блок-схема

Программа

P:=1;

For i:=1 to N do

For j:=1 to M do

If (A[i,j]>0) and (A[i,j]<10) Then P:=P*A[i,j];

Двумерные массивы: удаление строки с номером K

Для удаления строки необходимо на место удаляемой строки записать следующую строку. На место следующей строки необходимо записать строку, идущую за следующей и т.д. После замещения предпоследней строки количество строк необходимо уменьшить на единицу.

Блок-схема

Программа

For i:=K to N-1 do

For j:=1 to M do

A[i,j]:=A[i+1,j];

N:=N-1;

Двумерные массивы: ввод, вывод, генерация

Ввод элементов массива A, содержащего N строк и M столбцов

Блок-схема

Программа

For i:=1 to N do

For j:=1 to M do

Begin

Write(‘A[‘, i, ‘,‘, j, ‘]=‘);

readln(A[i,j]);

End;

Вывод элементов массива A, содержащего N элементов

Блок-схема

Программа

For i:=1 to N do

Begin

For j:=1 to M do

Write(A[i, j]:4); {вывод в одну строку}

Writeln; { Переход на следующую строку }

End;

Генерация элементов массива A, содержащего N элементов

Для генерации элементов массива в Pascal используется функция Random.

Для генерации целых чисел в диапазоне от X1 до X2 (X1 < X2) можно воспользоваться следующим выражением

A[i,j]:=X1+Random(X2-X1+1);

Например, для генерации целых чисел от -10 до 10 выражение будет следующим

A[i,j]:=-10+Random(21);

Для генерации вещественны чисел в диапазоне от X1 до X2 (X1 < X2, X2 не входит в отрезок) можно воспользоваться следующим выражением

A[i,j]:=X1+(X2-X1)*Random;

Например, для генерации целых чисел от -10 до 10 выражение будет следующим

A[i,j]:=-10+20*Random;

Блок-схема

Программа

For i:=1 to N do

For j:=1 to M do

A[i,j]:=-10+Random(21);

После генерирования элементов массива они (элементы) обычно выводятся на экран, так они хранятся в оперативной памяти и пользователю программы не видны.

Наши рекомендации