2016-03-23 23 views
-2

Ich habe ein Programm erstellt, das eine quadratische Spirale in Python mit Turtle-Grafiken erzeugt.Seite in einer quadratischen Spirale in Python (Turtle Graphics)

Worüber ich mir etwas unsicher bin, sind die Seiten in der Spirale.

Was ich für mein Programm haben zur Zeit ist:

from turtle import * 
startLength = int(input("Please enter the length of first side: ")) 
decrement = int(input("Please enter the change in length of side: ")) 
for i in range (3,8): 
    startLength = startLength - decrement 
    forward(startLength) 
    left(90) 

Es funktioniert besser, wenn ich den Benutzer auffordern, die Anzahl der Seiten wie diese ein:

from turtle import * 
startLength = int(input("Please enter the length of first side: ")) 
decrement = int(input("Please enter the change in length of side: ")) 
sideNum = int(input("Please enter the number of sides: ")) 
for i in range (sideNum): 
    startLength = startLength - decrement 
    forward(startLength) 
    left(90) 

Aber ich nur erlaubt bin um den Benutzer zu bitten, die Startlänge und das Dekrement einzugeben.

Wie kann ich eine Spirale mit der korrekten Anzahl von Seiten erstellen, ohne dass der Benutzer die Anzahl der Seiten eingeben muss?

Antwort

0

Sie überprüfen, um sehen können, wie lange die Linie sein, und es aufhören würde, wenn es zu klein wird, wie:

from turtle import * 
startLength = int(input("Please enter the length of first side: ")) 
decrement = int(input("Please enter the change in length of side: ")) 
while startLength > decrement: 
    forward(startLength) 
    left(90) 
    startLength = startLength - decrement 
forward(startLength) 

Die letzten forward(startLength) ist, dass kleinen Rest Bit hinzufügen, so dass die Spirale in den Enden Center. Auch habe ich die startLength = startLength - decrement nach dem Zeichnen so, dass die erste Zeile der Länge startLength ist.