Помощь - Поиск - Пользователи - Календарь
Полная версия: двухмерные массивы
Форум «Всё о Паскале» > Pascal, Object Pascal > Задачи
Tanchik
как можно поменять местами строки с четными и нечетными номера в двухмерном массиве
Lapp
Цитата(Tanchik @ 8.11.2009 6:50) *
как можно поменять местами строки с четными и нечетными номера в двухмерном массиве
По-всякому. Например, вот так:
const
n1= 0;
n2= 10;
m1= 1;
m2= 5;

type
tA= array[n1..n2,m1..m2]of integer;

var
a: tA;
i,j,b: integer;

begin
for i:=n1 to n2 do for j:=m1 to m2 do a[i,j]:=Random(100);
for i:=n1 to n2 do begin
for j:=m1 to m2 do Write(a[i,j]:4);
WriteLn
end;
WriteLn;

i:=n1;
while i<n2 do begin
for j:=m1 to m2 do begin
b:=a[i,j];
a[i,j]:=a[i+1,j];
a[i+1,j]:=b
end;
i:=i+2
end;

for i:=n1 to n2 do begin
for j:=m1 to m2 do Write(a[i,j]:4);
WriteLn
end;
ReadLn
end.



Tanchik
А если число строк нечетное то в последней строке программа выводит нули, а должна без изменений вывести последнию строчку
andriano
Цитата(Tanchik @ 8.11.2009 9:12) *
а должна без изменений вывести последнию строчку
Из условия задачи это не следует.
Хотя, с моей точки зрения, программа все равно работает неправильно: она должна, обнаружив, что количество строк нечетно, сообщить об этом пользователю и не проводить никакой обработки массива. Впрочем, от программы, демонстрирующей тот или иной способ обработки данных, это не требуется. Так же, как IMHO не требуется, чтобы она вообще компилировалась.

А вообще, нужно сразу полностью формулировать условие, а не дополнять его уже после того, как предъявлено готовое решение.

PS. Кстати, посмотрел код и так и не понял, откуда там могут браться нули. Да и количество строк в опубликованном варианте как раз нечетное.
Lapp
Цитата(Tanchik @ 8.11.2009 9:12) *
А если число строк нечетное то в последней строке программа выводит нули, а должна без изменений вывести последнию строчку
Tanchik, если тебе не трудно, пожалуйста, приведи полный вариант программы, где у тебя получается описанный тобой эффект. Спасибо.
Tanchik
Спасибки большое все получилось smile.gif
Lapp
Цитата(Lapp @ 8.11.2009 10:24) *
Tanchik, если тебе не трудно, пожалуйста, приведи полный вариант программы, где у тебя получается описанный тобой эффект. Спасибо.

Цитата(Tanchik @ 9.11.2009 8:11) *
Спасибки большое все получилось smile.gif

Видимо, оказалось трудно. Что ж, я тебе больше не ответчик..
Я отвечаю на вопросы при условии, что отвечают на мои тоже.
Это текстовая версия — только основной контент. Для просмотра полной версии этой страницы, пожалуйста, нажмите сюда.