1. Armin Rigo
  2. cpython-withatomic

Commits

bitdancer  committed a937f04

Merged revisions 73557 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/trunk

........
r73557 | r.david.murray | 2009-06-25 13:29:39 -0400 (Thu, 25 Jun 2009) | 3 lines

Issue 6340: update by Gregor Lingl of his tdemo_chaos demo program.
Functionally equivalent, clearer code, English comments.
........

  • Participants
  • Parent commits a1a6e6d
  • Branches default

Comments (0)

Files changed (1)

File Demo/turtle/tdemo_chaos.py

View file
-# Datei: chaosplotter.py
-# Autor: Gregor Lingl
-# Datum: 31. 5. 2008
+# File: tdemo_chaos.py
+# Author: Gregor Lingl
+# Date: 2009-06-24
 
-# Ein einfaches Programm zur Demonstration von "chaotischem Verhalten".
+# A demonstration of chaos
 
 from turtle import *
 
+N = 80
+
 def f(x):
     return 3.9*x*(1-x)
 
 def h(x):
     return 3.9*x-3.9*x*x
 
+def jumpto(x, y):
+    penup(); goto(x,y)
+
+def line(x1, y1, x2, y2):
+    jumpto(x1, y1)
+    pendown()
+    goto(x2, y2)
+
 def coosys():
-    penup()
-    goto(-1,0)
-    pendown()
-    goto(n+1,0)
-    penup()
-    goto(0, -0.1)
-    pendown()
-    goto(-0.1, 1.1)
+    line(-1, 0, N+1, 0)
+    line(0, -0.1, 0, 1.1)
 
-def plot(fun, start, farbe):
+def plot(fun, start, colour):
+    pencolor(colour)
     x = start
-    pencolor(farbe)
-    penup()
-    goto(0, x)
+    jumpto(0, x)
     pendown()
     dot(5)
-    for i in range(n):
+    for i in range(N):
         x=fun(x)
         goto(i+1,x)
         dot(5)
 
 def main():
-    global n
-    n = 80
-    ox=-250.0
-    oy=-150.0
-    ex= -2.0*ox / n
-    ey=300.0
-
     reset()
-    setworldcoordinates(-1.0,-0.1, n+1, 1.1)
+    setworldcoordinates(-1.0,-0.1, N+1, 1.1)
     speed(0)
     hideturtle()
     coosys()
     plot(f, 0.35, "blue")
     plot(g, 0.35, "green")
     plot(h, 0.35, "red")
+    # Now zoom in:
     for s in range(100):
-        setworldcoordinates(0.5*s,-0.1, n+1, 1.1)
-
+        setworldcoordinates(0.5*s,-0.1, N+1, 1.1)
     return "Done!"
 
 if __name__ == "__main__":