Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- //Spirals
- //┌─────────┐
- //│┌───────┐│
- //││┌─────┐││
- //│││┌───┐│││
- //││││┌─┐││││
- //│││││└┘││││
- //││││└──┘│││
- //│││└────┘││
- //││└──────┘│
- //│└────────┘
- //└──────────
- #include <stdio.h>
- #include <stdint.h>
- #define SIZE 24
- int main()
- {
- const int32_t dx[] = { 0, -1, 0, 1 }, dy[] = { -1, 0, 1, 0 };
- int32_t x = SIZE - 1, y = SIZE;
- uint32_t **Grid = new uint32_t*[SIZE];
- for( size_t i = 0; i < SIZE; i++ )
- {
- Grid[i] = new uint32_t[SIZE];
- }
- for( size_t i = 0, dir = 0; i < (SIZE << 1) - 1; ++i, dir = i & 3 )
- {
- for( size_t j = 0, js = ((SIZE << 1) - i) / 2; j < js; ++j )
- {
- Grid[x += dx[dir]][y += dy[dir]] = j + 1 == js ? "\xC0\xDA\xBF\xd9"[dir] : "\xC4\xB3"[dir & 1];
- }
- }
- for( size_t i = 0; i < SIZE*SIZE; i++ )
- {
- putchar(Grid[i / SIZE][i % SIZE]);
- (i + 1) % SIZE == 0 ? putchar('\n') : 0;
- }
- for( size_t i = 0; i < SIZE; i++ )
- {
- delete[] Grid[i];
- }
- delete[] Grid;
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement