Здрасьте.
Плиз, хелп ми. Я смотрю, вы все тут профи по Паскалю, а я в нем - ноль. А нам тут по информатике задали как раз по нему. Если не сделаю, меня информатик задушит.
Вообщем, дана матрица 9х9. Есть главная и побочная диагонали. Они пересекаются в центре. Надо найти максимальный элемент на строке k, которая находится выше точки пересечения диагоналей. Потом минимальный элемент на столбце n, который обитает правее точки пересечения. Ну а после всего этого ужаса надо еще и поменять местами элементы строки k с элементами столбца n.
Вот такие дела. Если уж честно, то мне Бейсик нравится, там я че-то могу сделать, но это... И в матрицах я не рублю.
Завтра экзамен по инфе... Ну да ладно.
Буду ждать помощи!!!!!!!!!! Спасибо!!!!!!!!!!!!!
P.S. Чуть не забыл - обьясните мне, пожалуйста, что такое главная и побочн. диагонали, а то я у информатика спросил, а он сам не знает.
вроде этого
uses crt;
const n=9;
var
a:array[1..n,1..n] of word;
i:word;
j:word;
maxk,xxx,minn:word;
begin
clrscr;
randomize;
for i:=1 to n do
for j:=1 to n do a[i,j]:=random(100);
for i:=1 to n do begin for j:=1 to n do
write(a[i,j]:5);
writeln end;
maxk:=1;
minn:=1;
xxx:=1;
for i:=1 to 5 do
for j:=1 to n do if a[i,j]>a[maxk,xxx] then begin maxk:=i; xxx:=j end;
xxx:=1;
for i:=1 to n do
for j:=5 to n do if a[i,j]<a[xxx,minn] then begin minn:=j; xxx:=i end;
for i:=1 to n do begin
xxx:=a[maxk,i];
a[maxk,i]:=a[i,minn];
a[i,minn]:=xxx;
end;
writeln;
for i:=1 to n do begin for j:=1 to n do
write(a[i,j]:5);
writeln end;
readkey;
end.
Вообще.
тогда, как я понимаю, код Фримена верен.... проверить точно не могу - негде
FreeMan, спасибо. Но Randomize мы еще не учили, придерется. Наверно заменить чем-нибудь типа
М | пользуемся тэгами! GoodWind |
Хотя ладно, подсуну ему это решение. Придерется - что ж, буду опять мучиться. Thanks GoodWind, FreeMan еще раз!