Максимум главной диагонали матрицы

Ответить
garic
Сообщения: 5
Зарегистрирован: 25 ноя 2009, 19:56

прога ищет максимальный элемент главной диагонали матрицы,
вопрос-(его нужно прибавить к элементам указаной строки)

program Array1;
uses
Crt;
type
XArray = array [1..50, 1..50] of real;
var
i, j, n, k, imax, jmax:integer;
X: XArray;
Max: real;
begin clrscr;
Write('vvedite razmer X[n,k], n = '); Readln(n);
Write('vvedite razmer X[n,k], k = '); Readln(k);
if n<>k then
begin
Writeln('glavnoy diagonali net');
ReadKey;
Exit;
end;
for i := 1 to n do
for j := 1 to n do
begin
Write('vvedite X[ ',i,', ',j,'] = ');
Readln(X[i,j]);
end;
Writeln;
i:=1;
while i<=n do
begin
for j := 1 to n do
Write(X[i, j]:5:2,' ');
Writeln;
i := i + 1;
end;
Max := X[1,1];
imax := 1;
jmax := 1;
for i := 1 to n do
begin
if Max < X[i,i] then
begin
Max:= X[i,i];
imax:=i;
jmax:=i;
end;
end;
Writeln(' Xmax[ ',imax,', ',jmax,'] = ',Max:8:2);
Readkey;
end.
Хыиуду
Сообщения: 2442
Зарегистрирован: 06 мар 2005, 21:03
Откуда: Москва
Контактная информация:

Предупреждение за некорректное название темы.
1. Чем меньше давать юзеру проявлять волю - тем меньше ошибок он сможет внести. Если мы знаем, что у матрицы есть главная диагональ - значит, она квадратная. Зачем тогда давать вводить длину и ширину матрицы? Хватит и длины, ширина ей по умолчанию равна.
2. Зачем вам сдался jmax, если он всегда равен imax?
3.
i:=1;
while i<=n do
begin
{...}
i := i + 1;
end;
for i:=1 to n do begin {...} end; - религия не позволяет? ;)
4. Добавить этот максимум, скажем, к p-й строке
for i:=1 to N do inc(X[i,p], Max);
Искусство программирования - заставить компьютер делать все то, что вам делать лень.
Для "спасибо" есть кнопка "Спасибо" в виде звездочки внизу под ником автора поста.
Ответить