Написать программу (в Pascal) и составить блок-схему по задаче: В двумерном массиве...

0 голосов
37 просмотров

Написать программу (в Pascal) и составить блок-схему по задаче: В двумерном массиве произвольной размеренности подсчитать количество элементов, равных наибольшему элементу в этом массиве. Вывести значение наибольшего элемента.


Информатика (17 баллов) | 37 просмотров
Дан 1 ответ
0 голосов
Правильный ответ

Алгоритм
Ввод массива A[n,m]
Max := A[1,1]; k := 1; p := 1; s := 0;
Алгоритм
Ввод массива A[n,m]
Max := A[1,1]; k := 1; p := 1; c := 0;
Цикл по i от 1 до n (по строкам)
Цикл по j от 1 до m (по столбцам)
Если (A(i, j) = Max) and ((i<>k) or (j<>p)) То c := c+1;
Если (A(i, j) > Max) То
k := i; p := j; c := 1;
Max: = A(i, j);
Конец Если
Конец цикла по столбцам
Конец цикла по строкам
Вывод "Элемент ", Max, " встречается ", c, " раз"
Конец.

Программа
var A: array of array of integer
var i,j,m,n,k,p,s,Max: integer
BEGIN
uses crt; clrscr;
write ('Vvedite kol-vo strok: '); readln (n);
write ('Vvedite kol-vo stolbtsov: '); readln (m);
setlength(A,n,m);
for i=1 to n do
begin
for j=1 to m do
begin
write ('Vvedite element vassiva: '); readln (A[i,j]);
end;
end;
Max := A[1,1]; k := 1; p := 1; c := 0;
for i=1 to n do
begin
for j=1 to m do
begin
if (A(i, j) = Max) and ((i<>k) or (j<>p)) then c := c+1;
if (A(i, j) > Max) then
begin
k := i; p := j; c := 1;
Max: = A(i, j);
end;
end;
end;
write ('Element ', Max, ' vstrechaetsya ', c, ' raz');
END.

(320k баллов)
0

В Pascal не работает, пишет "Ошибка: Ожидался символ "[" "

0

В Pascal не работает, пишет "Ошибка: Ожидался символ "[" "

0

В Pascal не работает, пишет "Ошибка: Ожидался символ "[" "

0

Во-первых, попробуй var A: array of integer of integer

0

Во-вторых, попробуй setlength(A[n,m]);

0

И еще Max: = A[i, j];

0

"Ошибка: Ожидался символ "[" " после array в строчке var A: array of array of integer

0

Ну попробуй var A: array [] of array of integer