Member 13592362 Ответов: 1

Как сделать внутри спиральный узор


Я пытаюсь сделать спиральный узор (только начиная с программирования на языке Си), и я не знаю, что делать внутри спирали. Я пытался сделать это вручную до n=15(например, спираль 15x15), но это было грязно, когда n=12 и более.

Что я уже пробовал:

For now I have the "cover" of the spiral:

<pre>int main()
{
		int N;
		scanf("%d", &N);
		for(int i = 0 ; i < N ; i++){
			for(int j = 0 ; j < N ; j++){
				if(i == 0 || i == N-1 || j == 0 || j == N-1) {
					if (i == 1 && j == 0) {
						printf(".");
					}else {
						printf("#");
					}
				}else {
					printf(".");
				}
			}
			printf("\n");
		}
	}


Например:

Для n=5 это выглядит следующим образом

#####
....#
#...#
#...#
#####


Для n=10 Вот так:

##########
.........#
#........#
#........#
#........#
#........#
#........#
#........#
#........#
##########



Мне нужна вот такая спираль:

Например, для n=7 это так:

#######
......#
#####.#
#...#.#
#.###.#
#.....#
#######

Nakhia_ind

Пожалуйста, объясните вкратце

1 Ответов

Рейтинг:
0

Patrice T

Цитата:
Я пытался сделать это вручную до n=15(например, спираль 15x15), но это было грязно, когда n=12 и более.

Пример того, что идет беспорядочно, - это то, что интересно.
Цитата:
Как сделать внутри спиральный узор

Совет:
- Используйте 2D-массив, где вы рисуете спираль, а затем печатаете массив.
- Заполните массив, как вы бы нарисовали спираль карандашом.

Таким образом, вы напечатаете любую вещь, независимо от того, насколько сложным является рисунок.