![]() |
|
|
|||||||
| Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
![]() |
|
|
Опции темы | Поиск в этой теме | Опции просмотра |
|
|
|
#1
|
|||
|
|||
|
Дана матрица размера М х N. Вывести ее элементы в следующем порядке: первый столбец сверху вниз, второй столбец снизу вверх, третий столбец сверху вниз, четвертый столбец снизу вверх и т.д.
Как вывести элементы массива в указанной последовательности??? |
|
#2
|
|||
|
|||
|
Ну и делай так, как написано.
Циклом по столбцам. Если индекс четный, то внутренний цикл с низу вверх, иначе - сверху вниз. Т.е. у тебя внутри будет If и 2 варианта циклов. |
|
#3
|
|||
|
|||
|
Совершенно точно. Вот работающий пример:
Код:
procedure TForm1.Button4Click(Sender: TObject);
const
M = 4; N = 4;
Matrix : array[1..M, 1..N] of Integer =
((1,2,3,4), (4,5,6,7), (8,9,10,11), (12,13,14,15));
var
S : String;
I, J : Integer;
begin
S := '';
for I := 1 to M do
if I mod 2 = 1 then
for J := 1 to N do
S := S + IntToStr(Matrix[I, J])+','
else
for J := N downto 1 do
S := S + IntToStr(Matrix[I, J])+',';
Edit1.Text := S;
end; |