Ява — квадратная спиральная координата

Я хочу найти, если точка (x, y), где x, y целые числа удовлетворяют спиральному квадрату.
(0,0) (0,1) (1,1) (1,2) (0,2) (-1,2) (-2,2) (-2,1) (-2,0) и скоро…..

введите описание изображения здесь

Как мне это сделать?
Я хочу логику для функции Java или C ++.

-7

Решение

Вот некоторая логика псевдокода:

Start with x=0, y=0, dist=0, direction=1
Loop
x += (++dist * direction)
WritePoint(x,y)
y += (++dist * direction)
WritePoint(x,y)
direction *= -1
LoopEnd

Возьми это оттуда.

0

Другие решения

Сделайте эту операцию:

(operator)(operation)(amount)

где оператор чередуется как x, y, x, y, … (используйте для этого оператор%), операция чередуется как +, +, -, -, +, +, -, -, +, + … (снова используйте оператор% для этого) и количество изменений как 1,2,3, …

0

По вопросам рекламы [email protected]