Ta geometryczna spirala wygląda na skomplikowaną, ale dość łatwo ją narysować; weź następujące pole:
Narysuj linię prostą między rogiem pudełka a pewną ustaloną odległością nad następnym rogiem przeciwnie do ruchu wskazówek zegara.
Kontynuuj ten wzór do wewnątrz, zawsze pozostając w tej odległości od narożnika następnej linii. Oto kilka kolejnych wierszy.
Jak widać, w miarę kontynuowania wzoru spirala zbliża się do środka, a rysowane pola zaczynają się obracać. Pamiętaj, że odległość pozostaje stała, niezależnie od kąta.
Wyzwanie
Inspiracja (a także dzięki cudownej osobie, która wprowadziła mnie do tej koncepcji <3)
Biorąc pod uwagę numeryczne (ewentualnie ułamkowe) dane wejściowe od 1 do 25, napisz obraz na dysk, który korzysta z tego wzoru lub wyświetl wynik na ekranie, gdzie odległość od każdego rogu jest odległością jednej początkowej strony pola podzielonej przez dane wejściowe . Kontynuuj wzór do wewnątrz, aż odległość od określonego rogu będzie większa niż długość następnej strony.
Zasady
- Nie możesz używać wbudowanych funkcji do tworzenia spirali, ale możesz używać wbudowanych funkcji przetwarzania obrazu.
- Jeśli piszesz na dysk, musisz wydrukować obraz w dowolnym z plików .jpg, .gif, .tiff, .pbm, .ppm i .png.
- Początkowa długość boku musi wynosić co najmniej 500 pikseli.
- Początkowy róg może być dowolny.
- Jak zawsze, standardowe luki są niedozwolone.