Немного не в тему...
Ребят, помогите пожалуйста составить программу в Паскале! Очень нужно!
Дана действительная матрица размером n*m. Все элементы с наибольшим значением заменить нулями (таких элементов может быть несколько).
Плиииз!
Pascal. Матрица M*N. Обнулить максимумы
- Naeel Maqsudov
- Сообщения: 2570
- Зарегистрирован: 20 фев 2004, 19:17
- Откуда: Moscow, Russia
- Контактная информация:
Перенес в отдельную тему, исправил название.
По зпдаче..
PS
Сравнение действительных чисел нельзя выполнять как IF A=B..., а можно только сравнивать их разность с погрешностью. Т.е., например, IF ABS(A-B)<0.0000001....
По зпдаче..
Код: Выделить всё
var
A:array[1..n,1..m] of real;
i,j:integer;
Max:real;
begin
{тут надо заполнить случайными числами или с клавиатуры
(посмотрите в других задачах как это делается)}
{тут надо надо добавить вывод матрицы на экран
(посмотрите в других задачах как это делается)}
{поиск максимума}
Max:=A[1,1];
for i:=1 to n do for j:=1 to m do if Max<A[i,j] then Max:=A[i,j];
{теперь замена}
for i:=1 to n do for j:=1 to m do if Abs(A[i,j]-Max)<0.0000001 then A[i,j]:=0;
{тут надо надо добавить вывод матрицы на экран
(посмотрите в других задачах как это делается)}
end;
PS
Сравнение действительных чисел нельзя выполнять как IF A=B..., а можно только сравнивать их разность с погрешностью. Т.е., например, IF ABS(A-B)<0.0000001....