31 lines
686 B
Text
31 lines
686 B
Text
'Barnsley Fern - Run BASIC
|
|
'http://rosettacode.org/wiki/Barnsley_fern#Run_BASIC
|
|
'copy code and run it at http://www.runbasic.com
|
|
'
|
|
' -----------------------------------
|
|
' Barnsley Fern
|
|
' -----------------------------------maxpoints = 20000
|
|
graphic #g, 200, 200
|
|
#g fill("blue")
|
|
FOR n = 1 TO maxpoints
|
|
p = RND(0)*100
|
|
IF p <= 1 THEN
|
|
nx = 0
|
|
ny = 0.16 * y
|
|
else if p <= 8 THEN
|
|
nx = 0.2 * x - 0.26 * y
|
|
ny = 0.23 * x + 0.22 * y + 1.6
|
|
else if p <= 15 THEN
|
|
nx = -0.15 * x + 0.28 * y
|
|
ny = 0.26 * x + 0.24 * y + 0.44
|
|
else
|
|
nx = 0.85 * x +0.04 * y
|
|
ny = -0.04 * x +0.85 * y + 1.6
|
|
end if
|
|
x = nx
|
|
y = ny
|
|
#g "color green ; set "; x * 17 + 100; " "; y * 17
|
|
|
|
NEXT n
|
|
render #g
|
|
#g "flush"
|