{ Пример 6.2. Дана целочисленная матрица А(N,M). Определить,
встречается ли заданное целое К среди максимальных
элементов столбцов этой матрицы.
Система тестов
╔═══════╤═════════════╤════════════════════════╤═══════════════╗
║ Номер │ Проверяемый │ Данные │ ║
║ теста │ случай ├───┬───┬───┬────────────┤ Результат ║
║ │ │ К │ N │ M │ Матрица А │ ║
╟───────┼─────────────┼───┼───┼───┼────────────┼───────────────╢
║ │ │ │ │ │ 1 5 8 │ ║
║ 1 │ Встречается │ 5 │ 3 │ 3 │ 4 2 0 │ "Встречается" ║
║ │ │ │ │ │ 1 2 3 │ ║
╟───────┼─────────────┼───┼───┼───┼────────────┼───────────────╢
║ 2 │ Не │ 1 │ 2 │ 2 │ 2 1 │ "Не ║
║ │ встречается │ │ │ │ 1 2 │ встречается" ║
╚═══════╧═════════════╧═══╧═══╧═══╧════════════╧═══════════════╝
}
Program Checking;
Uses Crt;
Var A : Array[1..10, 1..10] of Integer;
N, M, i, j : Integer;
K : Integer; { заданное число }
JMax : Integer; { максимальный элемент столбца }
Flag : Boolean;
{---------------------------------------------------}
Procedure InputOutput; { описание процедуры ввода-вывода }
Begin
ClrScr;
Write('Введите целое K = '); ReadLn(K); WriteLn;
WriteLn('Введите целочисленную матрицу А');
Write('Количество строк - '); ReadLn(N);
Write('Количество столбцов - '); ReadLn(M);
For i := 1 to N do
For j := 1 to M do
begin Write('A[' , i , ', ' , j , '] = ');
ReadLn(A[i, j])
end; ClrScr;
WriteLn('Исходная матрица :'); WriteLn;
For i := 1 to N do
begin
For j := 1 to M do Write(A[i,j]:4);
WriteLn
end; WriteLn;
End; { of InputOutput }
{--------------------------------------------}
Procedure YesOrNot(Var Flag:Boolean); { описание процедуры }
Begin { решения задачи }
Flag:=FALSE; j:=1;
While (j<=M) and not Flag do { цикл по столбцам с прерыванием }
begin JMax:=A[1, j];
For i := 2 to N do { цикл нахождения JMax }
If A[i, j]>JMax then JMax:=A[i, j];
If K=JMax then Flag:=TRUE else j:=j+1 { условие прерывания }
end;
End;
{--------------------------------------------}
BEGIN
InputOutput; { вызов процедуры ввода-вывода исходных данных }
YesOrNot(Flag); { вызов процедуры решения задачи }
Write('О т в е т : число ', K );
If Flag then Write(' встречается')
else Write(' не встречается');
WriteLn(' среди максимальных элементов столбцов матрицы');
ReadLn
END.
Похожие записи/страницы:
- Дана целочисленная матрица A(N, M). Определить, встречается ли заданное целое K среди максимальных элементов…
- Дана целочисленная матрица A(N, N). Определить, имеются ли среди её элементов, лежащих ниже главной диагонали,…
- Определить, имеется ли среди элементов главной диагонали заданной целочисленной матрицы A(N, N) хотя бы один…
- Проверить, является ли заданная целочисленная матрица A(N, N) "магическим квадратом" - Pascal(Паскаль)
- Дана целочисленная прямоугольная матрица. Определить количество отрицательных элементов в тех строках, которые…
- Дана целочисленная квадратная матрица. Найти наименьшее из значений элементов расположенных в области…
- Дан одномерный массив целых чисел А[i], где i=1,2,…,N. Определить: 1)Сколько раз максимальный элемент…
- Подсчитать, сколько раз встречается в заданной целочисленной матрице A(N, M) максимальное по величине число -…