Помощь - Поиск - Пользователи - Календарь
Полная версия: Заполнение массива змейкой
Форум «Всё о Паскале» > Pascal, Object Pascal > Задачи
$rvr4vr
Дан двумерный массив T(n, n) заполнить его методом змейки числами от 1 до n2. Например, матрица T(3, 3) будет иметь вид:
1 2 3
6 5 4
7 8 9
Алгоритм построения матрицы оптимизировать. Использовать один цикл.
мисс_граффити
матрицу за один цикл - это оптимально? с какой точки зрения?
ну ладно, ты сам-то пробовал что-то делать?

З.Ы. Как-то красный напрягает. Это все-таки модераторско-админский цвет...
volvo
Цитата
Алгоритм построения матрицы оптимизировать
Покажи то, что ты сделал, мы поможем это оптимизировать, договорились? А вообще-то неплохо бы и поиск использовать, заполнений "змейкой" на форуме штук 5 было разных...
$rvr4vr
дык в том то и прикол что оптимизация тут это сделать ее в один цикл. в два то она простейшая задача, а в один я ума не приложу как nea.gif
volvo
Еще раз: то, что это просто - понятно...

Покажи, как ТЫ делаешь...
volvo
У меня почему-то получилось:
const
n = 5;
type
mx = array[1 .. n, 1 .. n] of integer;

var
a: mx;
i, j, count: integer;

begin
count := 1;
for i := 1 to n*n do begin
a[succ(pred(i) div n), count] := i;
inc( count,
byte((i mod n) <> 0)*(1 - 2 * byte(odd(i div n))) );
end;

for i := 1 to n do begin
for j := 1 to n do write(a[i, j]:4);
writeln;
end;
end.
$rvr4vr
а можешь объяснить? а то меня спросят что делает к примеру это:
"a[succ(pred(i) div n), count] := i;
inc( count, byte((i mod n) <> 0)*(1 - 2 * byte(odd(i div n))) );" ?
а я не смогу ответить. dry.gif
мисс_граффити
почитай про ф-ции succ,pred,div,inc,odd и все поймешь....
тебе пытались помочь все делать - сам же отказался. дали готовый код....
$rvr4vr
Цитата(мисс_граффити @ 5.11.2006 17:01) *

тебе пытались помочь все делать - сам же отказался. дали готовый код....


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

 ! 
"Не разбираюсь я в пасе" А ты что хотел? "Пришел, увидел, победил"? Так не бывает... Не пытаешься разобраться - поэтому и не разбираешься...

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