Code: (Select All)
_Title "Sierpinski Triangle in QB64PE"
Screen _NewImage(800, 800, 32)
For d = 0 To 7
SierpinskiTriangle 50, 50, 700, d
_Display
_Delay 2
Next
System
Sub SierpinskiTriangle (x As Integer, y As Integer, size As Integer, depth As Integer)
If depth = 0 Then
Line (x, y)-(x + size, y)
Line (x + size, y)-(x + size / 2, y + Int(size * Sin(_Pi / 3)))
Line (x + size / 2, y + Int(size * Sin(_Pi / 3)))-(x, y)
Else
Color _RGB32(255 * Rnd, 255 * Rnd, 255 * Rnd)
SierpinskiTriangle x, y, size / 2, depth - 1
SierpinskiTriangle x + size / 2, y, size / 2, depth - 1
SierpinskiTriangle x + size / 4, y + Int((size / 2) * Sin(_Pi / 3)), size / 2, depth - 1
End If
End Sub