Версия для печати темы

Нажмите сюда для просмотра этой темы в обычном формате

Форум «Всё о Паскале» _ Задачи _ matrix

Автор: The_Annie 16.01.2004 21:34

Ксажите пожалуйста кто-нибуть знает как расположить елементы отсортированной матрицы в ввиде "улитки"?

Автор: The_Annie 17.01.2004 16:27

Помогите пожалуйста решить мне мою проблему!

Автор: error_404 17.01.2004 22:18

>в ввиде "улитки"
а это как?  ???

Автор: trminator 17.01.2004 23:57

Кажется, это так:

04 03 02 01
05 14 13 12
06 15 16 11
07 08 09 10

Формулу вывести у меня обломалось... ненавижу задачи такого плана...

Автор: The_Annie 18.01.2004 1:30

Пожалуйста! Ну я вас очень прошу, хотя бы принцып!

Автор: trminator 18.01.2004 18:22

Вот эта гадость

Код

const m = 5;
var a: array[1..m, 1..m] of integer;
   i, j, di, dj, n  : integer;
   min_i, min_j, max_i, max_j : integer;
begin
 i:=1; j:=m; dj:=-1; di:=0;
 A[i,j]:=1;

 min_i:=2; min_j:=1;
 max_i:=m; max_j:=m;

 for n:=2 to m*m do
 begin
 {1}
     if (dj<>0) and (j+dj < min_j) then
     begin
         dj:=0; di:=1; inc(min_j)
     end else
 {2}
     if (di<>0) and (i+di > max_i) then
     begin
         di:=0; dj:=1; dec(max_i)
     end else
 {3}
     if (dj<>0) and (j+dj > max_j) then
     begin
         dj:=0; di:=-1; dec(max_j)
     end else
 {4}
     if (di<>0) and (i+di < min_i) then
     begin
         di:=0; dj:=-1; inc(min_i)
     end;

     inc(i, di); inc(j, dj);
     A[i,j]:=n
 end;
end.

ужас... да чтобы я еще раз за ЭТО сел

Автор: The_Annie 18.01.2004 18:28

От спасибо! :D

Автор: AlaRic 18.01.2004 18:46

trminator, да молодец-молодец! ха-ха  ;D ;D ;D