Змейка

From
Nickita A Startcev (2:5030/1039.8)
To
Oleg Zhigalov
Date
2002-11-18T12:52:52Z
Area
RU.ALGORITHMS
Привет, Oleg !


 12 Nov 02 , 00:37  Oleg Zhigalov писал к All:

 OZ> буду очень пpизнателен кто поделится алгоpитмом по заполнению 2х
 OZ> меpной матpицы по спиpали (можно из центpа либо из внешних
 OZ> гpаней) p/s/ pазмеp матpицы динамический

Границы, отражения, шаги по Х и по У.

Что-то типа нижеуказанного..

int X_size, Y_size;
int i=0;

[skip]

i=0;ok=0;
X=0;Y=0;

left=0;
right=X_size;
up=0;
down=Y_size;

GOING=_right;

// max_i=(X_size+1)*(Y_size+1);

while(ok==0)
// while(i<max_i)
{
    M[X][Y]=i;
    i++;
    if(GOING==_right)
    {
        if(left==right)ok=1;
        X++;
        if(X==right) GOING==_dn; // дойдя до правого края поворачиваем вниз
        up++;                   // опускаем верхнюю границу
    }
    if(GOING==_left)
    {
        X--;
        [skip]
    }
    if(GOING==_up)
    {
        Y--;
        [skip]
    }
    if(GOING==_dn)
    {
         Y++;
        [skip]
    }
}

.                                                С уважением, Никита.
... Aqualung - my friend. ;-)
--- GoldED+/LNX 1.1.4.7
 * Origin: Люди Билли не любили... (c) (2:5030/1039.8)