ТОР 5 статей: Методические подходы к анализу финансового состояния предприятия Проблема периодизации русской литературы ХХ века. Краткая характеристика второй половины ХХ века Характеристика шлифовальных кругов и ее маркировка Служебные части речи. Предлог. Союз. Частицы КАТЕГОРИИ:
|
Пример 3.2. Подсчитать, сколько раз встречается в заданной целочисленнойМатрице A(N, M) максимальное по величине число. Тест
Алгоритмический язык алг Количество максимумов(арг цел N,M, арг цел таб А[1:N,1:M], рез цел K) нач цел i, j, Amax Amax:= A[1, 1] | Поиск максимального элемента матрицы нц для i от 1 до N нц для j от 1 до M если A[i, j] > Amax то Amax:= A[i, j] Все Кц Кц K:= 0 | подсчет количества вхождений Amax нц для i от 1 до N нц для j от 1 до M если A[i, j] = Amax то K:= K+1 Все Кц Кц Кон Turbo Pascal Program NumberOfMaximums; Uses Crt; Type Mas = Array [1..10, 1..10] of Integer; Var A: Mas; N, M, K, Amax, i, j: Integer; {K - искомый результат} {--------------------------------------------} Procedure InputOutput(Var A: Mas); Begin {описание процедуры ввода-вывода матрицы} ClrScr; 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; WriteLn; Блок-схема (фрагмент) ClrScr; WriteLn(' Матрица А'); For i:= 1 to N do {Вывод матрицы} begin For j:= 1 to M do Write(A[i, j]: 5); WriteLn; end; WriteLn; End; { of InputOutput } {--------------------------------------------} Procedure MaxElement(Var A: Mas; Var Amax: Integer); Begin {описание процедуры поиска Amax} Amax:= A[1, 1]; For i:= 1 to N do For j:= 1 to M do If A[i, j] > Amax then Amax:= A[i, j]; End; {of MaxElement} {--------------------------------------------} Procedure HowMuch(Var A: Mas; K: Integer); Begin {описание процедуры подсчета числа вхождений Amax} K:=0; For i:= 1 to N do For j:= 1 to M do if A[i, j] = Amax then K:= K+1; WriteLn('Максимальное число ', Amax: 3, ' встречается ', K, ' раз(a)'); ReadLn; End; {of HowMuch} {--------------------------------------------} BEGIN InputOutput(A); {Вызов процедуры ввода-вывода матрицы} MaxElement(A, Amax); {Вызов процедуры поиска макс. элемента} HowMuch(A, K); {Вызов процедуры подсчета числа вхождений максимального элемента } END. Не нашли, что искали? Воспользуйтесь поиском:
|