77 lines
1.2 KiB
Plaintext
77 lines
1.2 KiB
Plaintext
'Rosetta Code problem: https://rosettacode.org/wiki/Simple_turtle_graphics
|
|
|
|
'by Jjuanhdez, 03/2023
|
|
|
|
#include "Turtle_Graphics.bi"
|
|
|
|
Sub rectangle(ancho As Short, alto As Short)
|
|
For i As Short = 1 To 2
|
|
FORW alto
|
|
LEF 90
|
|
FORW ancho
|
|
LEF 90
|
|
Next i
|
|
End Sub
|
|
|
|
Sub square(lado As Short)
|
|
rectangle(lado, lado)
|
|
End Sub
|
|
|
|
Sub triangle(lado As Short)
|
|
For i As Short = 1 To 3
|
|
FORW lado
|
|
RIGH 120
|
|
Next i
|
|
End Sub
|
|
|
|
Sub house(lado As Short)
|
|
LEF 90
|
|
square lado
|
|
triangle lado
|
|
RIGH 90
|
|
End Sub
|
|
|
|
Sub barchart(lst() As Double, lado As Short)
|
|
Dim As Short i, min, max
|
|
max = lst(Ubound(lst))
|
|
|
|
For i = Lbound(lst) To Ubound(lst)
|
|
If lst(i) > max Then max = lst(i)
|
|
Next i
|
|
|
|
Dim As Short escala = lado/max
|
|
Dim As Short ancho = lado/Ubound(lst)
|
|
|
|
For i = Lbound(lst) To Ubound(lst)
|
|
rectangle lst(i), ancho
|
|
UP
|
|
FORW ancho
|
|
DOWN
|
|
Next i
|
|
UP
|
|
BACK lado
|
|
DOWN
|
|
End Sub
|
|
|
|
Screenres 800,600
|
|
Windowtitle "Simple turtle graphics"
|
|
Cls
|
|
|
|
TURTLE 1
|
|
SETSIZE 3
|
|
SETCOL 0 'black
|
|
|
|
DOWN
|
|
BACK 200
|
|
SETCOL 2 'green
|
|
|
|
house 150
|
|
UP
|
|
RIGH 90
|
|
FORW 50
|
|
|
|
Dim As Double s(1 To 6) = {1, 50, 33, 200, 130, 50}
|
|
barchart s(), 200
|
|
SETCOL 0
|
|
Sleep
|