Одномерный массив из отрицательных элементов области исходной матрицы - Pascal
Формулировка задачи:
Доброго времени суток, помогите пожалуйста с задачей.
Сформировать одномерный массив В из отрицательных элементов области исходной матрицы А(9,7), лежащей левее шестого столбца. В полученном массиве поменять местами первый и максимальный элементы.
Решение задачи: «Одномерный массив из отрицательных элементов области исходной матрицы»
textual
Листинг программы
const m=9; n=7; p=5; W=3; var a: array [1..m, 1..n] of Integer; b: array [1..m*p] of Integer; bn, im, i, j, t: Integer; begin Randomize; {bn:=0;} WriteLn('A ='); for i:=1 to m do begin for j:=1 to n do begin a[i,j]:=-99+Random(199); Write(' ',a[i,j]:W); end; WriteLn; end; WriteLn('B ='); im:=1; for i:=1 to m do for j:=1 to p do if a[i,j]<0 then begin Inc(bn); b[bn]:=a[i,j]; Write(' ',b[bn]:W); if b[im]<b[bn] then im:=bn; end; WriteLn; if bn=0 then WriteLn('Нет отрицательных в [1;1]-[',m,',',p,']') else begin WriteLn('Максимум: ',b[im],' в позиции ',im); t:=b[1]; b[1]:=b[im]; b[im]:=t; WriteLn('B''='); for i:=1 to bn do Write(' ',b[i]:W); WriteLn; end; end.
Объяснение кода листинга программы
- Объявляется константа
m
со значением 9, константаn
со значением 7, константаp
со значением 5, и константаW
со значением 3. - Объявляются переменные:
a
как двумерный массив размером m на n, содержащий целые числаb
как одномерный массив размером m*p, содержащий целые числаbn
,im
,i
,j
,t
как целочисленные переменные
- Генерируется случайное значение (Randomize)
- Выводится сообщение
A =
- Создается цикл для заполнения двумерного массива
a
случайными отрицательными числами и выводится на экран - Выводится сообщение
B =
- Создается цикл, в котором происходит заполнение одномерного массива
b
отрицательными числами из двумерного массиваa
. Также происходит поиск максимального отрицательного числа и его позиции в массивеb
- Проверяется, есть ли отрицательные числа в заданной области [1;1]-[m;p]
- Если есть, выводится максимальное отрицательное число и меняется местами с первым отрицательным числом
- Выводится массив
b
на экран Итак, в данном коде создается исходный двумерный массивa
, заполняется случайными числами, затем из него формируется одномерный массивb
из отрицательных элементов, и выводится на экран.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д