Партнерка на США и Канаду по недвижимости, выплаты в крипто
- 30% recurring commission
- Выплаты в USDT
- Вывод каждую неделю
- Комиссия до 5 лет за каждого referral
for i:=1 to m do {внешний цикл, изменяется номер строки}
.......
for j:=1 to n do {внутренний цикл, изменяется номер столбца}
..........
Перемещение по столбцу :
for j:=1 to n do {внешний цикл, изменяется номер столбца}
.......
for i:=1 to m do {внутренний цикл, изменяется номер строки}
Перечислим базовые алгоритмы и рассмотрим каждый из них.
1. Заполнение двумерного массива :
а) по строке; б) по столбцу
2. Печать в виде таблицы.
3. Вычисление суммы элементов каждой строки и каждого столбца.
4. Поиск максимального (минимального) элементов каждой строки (столбца) и их индексов.
5. Сумма элементов массива.
6. Максимальный (минимальный) элемент массива.
Ввод (заполнение) элементов двумерного массива (матрицы)
For i:=1 to n do
For j:=1 to m do
Readln(A[i, j]);
1. Заполнение двумерного массива по строке.
Массив содержит 3 строки и 4 столбца, т. е. 3х4=12 элементов
а11 | а12 | а13 | а14 |
а21 | . | . | . |
. | . | . | . |
For i:=1 to 3 do
For j:=1 to 4 do
a[i, j]:=random(100);
2. Заполнение двумерного массива по столбцу :
а11 | а12 | . | . |
а21 | . | . | . |
а31 | . | . | . |
For j:=1 to 4 do
For i:=1 to 3 do
a[i, j]:=random(100);
3. Печать содержимого на экран :
For i:=1 to n do
begin
For j:=1 to m do
Write (A[i, j]); {Вывод элементов одной
строки матрицы}
Writeln; { переход на следующую строку экрана}
end;
где
А - имя массива;
i - индекс строки;
j - индекс столбца;
n - количество элементов в строке;
m - количество элементов в столбце.
4. Вычисление суммы элементов каждой строки, столбца.
Дана квадратная матрица NxN, содержащая вещественные числа. Найти сумму элементов первого столбца.
Program pr2;
CONST N=3;
TYPE MAS=array [1..N,1..N] of real;
Var a: MAS;
i: 1..3;
j : 1..3;
s:real;
BEGIN
Writeln(‘Введите элементы массива’);
For i:=1 to n do
For j:=1 to n do
Readln(a[i, j]);
{Вывод значений массива}
For i:=1 to n do
begin
For j:=1 to n do
Write (a[i, j]:5:1);
Writeln;
end;
s:=0; j=1;
For i:=1 to n do
s:=s+a[i, j];
Writeln(‘Сумма элементов первого столбца = ’,s:5:2);
end.
5.Вычисление суммы элементов всего двумерного массива.
......
S:=0;
for i:=1 to m do
for j:=0 to n do
S:=S+a[i, j];
.............
6. Задача поиска максимального (минимального) элемента и его индексов.
Ищем максимальный элемент каждой строки :
For i:=0 to m do
begin
max:=a[i,1];
ind_L:=i; {сохраняем номер строки}
ind_C:=1; {заносим номер 1 - первый столбец}
for j:=1 to n do
if a[i, j]>max then begin
max:=a[i, j];
ind_C:=j {сохраняем номер j-ого столбца}
end;
writeln(‘max строки ’,i,’=’,max)
end;
Ищем минимальный элемент каждого столбца :
For j:=0 to n do { перемещаемся по столбцу}
begin
min:=a[1,j];
ind_L:=1; {сохраняем номер строки}
ind_C:=j; {сохраняем номер столбца}
for i:=1 to m do
if a[i, j]<min then begin
min:=a[i, j];
ind_L:=i {сохраняем номер j-ой строки}
end;
writeln(‘min ‘,j,’ столбца’,min)
end;
7. Алгоритм поиска минимального элемента и его индексов для всего массива.
Min:=a[1,1];
ind_L:=1;
ind_C:=1;
for i:=1 to m do
for j:=1 to n do
if a[i, j]<min then begin
min:=a[i, j]; ind_L:=i; ind_C:=j;
end;
8. Квадратные матрицы.
Type mas4x4=array[1..4,1..4] of integer;
var a: mas4x4;
a11 | a12 | a13 | a14 |
a21 | a22 | a23 | a24 |
a31 | a32 | a33 | a34 |
a41 | a42 | a43 | a44 |
Главная диагональ - элементы a11, a22, a33, a44 (индексы элементов, расположенных на главной диагонали (i=j)
Побочная диагональ - элементы a41, a32, a23, a14 (сумма индексов элементов на 1 больше размерности строки (или столбца), т. е. i+j=4=1 или i+j=n+1. На рисунке главная диагональ закрашена сплошным серым цветом, побочная - черным.
| a12 | a13 | a14 |
a23 | a24 | ||
a34 | |||
Элементы, расположенные над главной диагональю, Для индексов элементов, расположенных над главной диагональю выполняется отношение i<j;
| |||
a21 | |||
a31 | a32 | ||
a41 | a42 | a43 |
Элементы, расположенные под главной диагональю, Для индексов элементов, расположенных под главной диагональю выполняется отношение i>j;
Примеры :
1) Найти сумму элементов главной диагонали:
S:=0;
for i:=1 to n do
S:=S+a[i, i];
2) Найти минимальный элемент побочной диагонали:
min:=a[1,n];
for i:=1 to n do
if a[i, n+1-i]<min then min:=a[i, n+1-i];
Примеры решения задач
Задача 1. Дан массив действительных чисел, состоящий из 3 строк и 5 столбцов. Вычислить произведение всех элементов массива.
Program pr1;
CONST N=3; M=5;
TYPE MAS=array [1..N,1..M] of real;
Var b: MAS;
i: 1..N;
j : 1..M;
p:real;
BEGIN
Writeln(‘Введите элементы массива’);
For i:=1 to n do
For j:=1 to m do
Readln(b[i, j]);
{Вывод значений массива}
For i:=1 to n do
begin
For j:=1 to m do
Write (b[i, j]); {Вывод элементов одной строки матрицы}
Writeln; { переход на следующую строку экрана}
end;
p:=1;
For i:=1 to n do
For j:=1 to m do
p:=p*b[i, j];
Writeln(‘Произведение = ’,p:7:2);
end.
Задача 2. Дан двумерный массив A[N, M]
Сформировать массив B[N, M], где
SQR(A[I. J]), если I - НЕЧЕТНОЕ;
B[I, J] =
SQRТ(A[I. J]), если I - ЧЕТНОЕ;
Program pr3;
CONST N=3; M=5;
TYPE MAS=array [1..N,1..M] of real;
Var a, b : MAS;
i: 1..N;
j : 1..M;
BEGIN
Writeln(‘Введите элементы массива’);
For i:=1 to N do
For j:=1 to M do
Readln(a[i, j]);
{Вывод значений массива}
For i:=1 to N do
begin
For j:=1 to M do
Write (a[i, j]:5:1);
Writeln;
end;
For i:=1 to N do
if i/2= int(i/2) Then For j:=1 to M do
b[i, j]:=sqrt (a[i, j])
Else For j:=1 to M do
b[i, j]:=sqr (a[i, j])
For i:=1 to N do
begin
For j:=1 to M do
Write (b[i, j]:7:2);
Writeln;
end;
end.
9.1 Дан двухмерный массив целых чисел. Составить программу :
а) вывода на экран элемента, расположенного в правом верхнем углу массива;
б) вывода на экран элемента, расположенного в левом нижнем углу массива;
в) вывода на экран любого элемента второй строки массива;
г) вывода на экран любого элемента третьего столбца массива;
д) вывода на экран любого элемента массива.
9.2 Дан двухмерный вещественный массив. Поменять местами :
а) элементы, расположенные в верхнем правом и нижнем левом углах;
б) элементы, расположенные в нижнем правом и верхнем левом углах;
9.3 Известен номер строки, на которой расположен элемент главной диагонали двумерного массива целых чисел. Вывести на экран значение этого элемента.
9.4 Вывести на экран (в одну строку) :
а) все элементы главной диагонали целочисленного массива, начиная с элемента, расположенного в левом верхнем углу;
б) все элементы главной диагонали вещественного массива, начиная с элемента, расположенного в правом нижнем углу.
9.5 Заменить значения всех элементов главной диагонали целочисленного массива на нулевые.
9.6 Заменить значения всех элементов побочной диагонали целочисленного массива на значения, равные 100.
9.7 Определить :
а) сумму элементов главной диагонали вещественного массива;
б) сумму элементов побочной диагонали целочисленного массива;
в) среднее арифметическое элементов главной диагонали массива целых чисел;
г) среднее арифметическое элементов побочной диагонали вещественного массива;
д) минимальный (максимальный) элемент главной диагонали целого массива;
е) максимальный (минимальный) элемент побочной диагонали вещественного массива;
ж) координаты первого максимального элемента главной диагонали вещественного массива;
з) координаты первого минимального элемента главной диагонали целочисленного массива.
9.8 Верно ли, что сумма элементов главной диагонали целочисленного массива не превышает 100?
|
Из за большого объема этот материал размещен на нескольких страницах:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 |




