Data Update

This commit is contained in:
Ingy döt Net 2023-07-09 17:42:30 -04:00
parent 015c2add84
commit e50b5c3114
206 changed files with 6337 additions and 523 deletions

View file

@ -0,0 +1,69 @@
subr home
deg = 0
x = 50
y = 50
down = 0
move x y
.
call home
#
proc forward n . .
x += cos deg * n
y += sin deg * n
if down = 1
line x y
else
move x y
.
sleep 0.1
.
proc turn a . .
deg -= a
.
#
proc house . .
call turn 180
call forward 45
call turn 180
down = 1
#
call forward 30
call turn 90
call forward 30
call turn 90
call forward 30
call turn 90
call forward 30
#
call turn 30
call forward 30
call turn 120
call forward 30
call home
.
call house
#
proc bar a[] . .
call turn 90
call forward 30
call turn -90
down = 1
for i to len a[]
max = higher max a[i]
.
for i to len a[]
h = a[i] / max * 50
w = 45 / len a[]
call turn -90
call forward h
call turn 90
call forward w
call turn 90
call forward h
call turn -90
.
call turn 180
call forward 45
call home
.
call bar [ 50 33 200 130 50 ]

View file

@ -0,0 +1,22 @@
100 PROGRAM "Turtle.bas"
110 OPTION ANGLE DEGREES
120 GRAPHICS HIRES 4
130 CALL HOUSE(0,200,200)
140 SET INK 2:CALL CHART(250,200,60)
150 DEF HOUSE(X,Y,L)
160 PLOT X,Y,ANGLE 0;
170 FOR I=1 TO 4
180 PLOT FORWARD 200,RIGHT 90;
190 NEXT
200 PLOT LEFT 60;FORWARD L;RIGHT 120;FORWARD L;X,Y,
210 END DEF
220 DEF CHART(X,Y,L)
230 PLOT X,Y,
240 DO
250 READ IF MISSING EXIT DO:Z
260 PLOT ANGLE 90;FORWARD Z;RIGHT 90;FORWARD L;RIGHT 90;FORWARD Z;RIGHT 90;FORWARD L
270 PLOT ANGLE 0;FORWARD L
280 LOOP
290 PLOT X,Y,
300 END DEF
310 DATA 90,60,300,200,90

View file

@ -32,15 +32,13 @@ int N;
proc BarGraph(List, Len, Size);
real List; int Len; real Size;
real PosX0;
int N;
def BarWidth = 0.4;
[PosX0:= PosX;
for N:= 0 to Len-1 do
[for N:= 0 to Len-1 do
[Rectangle(Size*BarWidth, List(N)*Size);
MoveTo(Size*BarWidth);
];
PosX:= PosX0;
MoveTo(-Size*BarWidth*float(Len));
];
proc Triangle(Size);
@ -69,5 +67,5 @@ Move(ScrW/2, ScrH/2); \start Line at center
Dir:= 0.0; PosX:= 0.0; PosY:= 0.0; Pen:= Down;
House(80.0);
Pen:= Up; MoveTo(10.0); Pen:= Down;
BarGraph([0.5, 1.0/3.0, 2.0, 1.3, 0.5], 5, 50.0);
BarGraph([0.5, 1.0/3.0, 2.0, 1.3, 0.5], 5, 45.0);
]