Страница 1 из 1
Странный swap
Добавлено: 06 янв 2008, 23:37
Monopo
Имею двумерный массив a[1..n,1..n] целых чисел.
Хочу поменять последнюю строку с последним столбцом.
Код: Выделить всё
...
for i:=1 to n do
for j:=1 to n do
read(a[i,j]);
writeln('Resultat>');
for i:=1 to n-1 do
swap(a[n,i],a[i,n]);
...
Выдает ошибку в swap, устанавливает курсор на запятую между двумя элементами массива и говорит, что там нужна ')', закомментирую swap - ошибка пропадает.
Чего ему там не хватило?
Re: Странный swap
Добавлено: 06 янв 2008, 23:51
somewhere
процедуру swap можно в студию?
Re: Странный swap
Добавлено: 07 янв 2008, 09:41
Serge_Bliznykov
somewhere, он его не приведёт.
это встроенная функция Pascal!
Swap (function)
Swaps the high- and low-order bytes of the
argument.
Declaration:
function Swap(X): (Same type as parameter);
вот же народ... и ведь нашёл же он её!!!! ;-)))
Monopo,
для того, чтобы поменять два элемента массива местами, достаточно
одной доп.переменной и такого кода:
Код: Выделить всё
begin
TempX := a[n,i];
a[n,i] := a[i,n];
a[i,n] := TempX;
end;
Re: Странный swap
Добавлено: 07 янв 2008, 12:12
somewhere
Ну тогда понятно, ведь это функция, и у нее один параметр. К тому же она просто байтики аргумента старшие и младшие меняет местами, а не конкретные переменные по разным адресам.
Re: Странный swap
Добавлено: 07 янв 2008, 12:34
Duncon
function Swap(X: SmallInt): SmallInt;
function Swap(X: Longint): Longint;
Re: Странный swap
Добавлено: 14 янв 2008, 17:56
silverman
да хватит париться! функции, массивы, программы, какая пофиг разница! Даёшь флуд на полную катушку! Флуд ради флуда! Давайте обсудим, у кого какие мусорные вёдра и выбивалки для ковров!!!!!