RosettaCodeData/Task/Simple-turtle-graphics/IS-BASIC/simple-turtle-graphics.basic

30 lines
755 B
Plaintext

100 PROGRAM "Turtle.bas"
110 OPTION ANGLE DEGREES
120 GRAPHICS HIRES 4
130 CALL HOUSE(200,200,200)
140 SET INK 2:CALL CHART(450,200,1000,700)
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,X1,Y1)
230 LET PC,MX=0
240 DO
250 READ IF MISSING EXIT DO:Z
260 LET PC=PC+1:LET MX=MAX(MX,Z)
270 LOOP
280 RESTORE
290 LET L=(X1-X)/PC:LET MX=(Y1-Y)/MX
300 PLOT X,Y,
310 DO
320 READ IF MISSING EXIT DO:Z
330 PLOT ANGLE 90;FORWARD Z*MX;RIGHT 90;FORWARD L;RIGHT 90;FORWARD Z*MX;RIGHT 90;FORWARD L
340 PLOT ANGLE 0;FORWARD L
350 LOOP
360 PLOT X,Y,
370 END DEF
380 DATA 90,60,300,200,90