惑星の軌道シミュレート(BASIC)
10 T=0 :WAIT 0 20 X=10:Y=20 30 X0=20:Y0=20 40 G=6.67:M0=1 50 VX=0:VY=-1 60 Y1=Y:X1=X 70 W1= SQR(VX*VX+VY*VY) 80 W2= SQR(VX*VX+VY*VY) 90 GM=G*M0 100 CLS :LOC. 19,2 :U. "#####" :PRINT T 110 T=0 120 GC. (X0,Y0) 130 GP. "E0E0E0" 140 R2=(X-X0)*(X-X0)+(Y-Y0)*(Y-Y0) 150 IF R2<8 THEN 400 ELSE 160 160 A=GM/R2 170 VX=VX+A*(X0-X)/SQR(R2) 180 VY=VY+A*(Y0-Y)/SQR(R2) 190 V=SQR(VX*VX+VY*VY) 200 IF W1<V THEN W1=V 210 IF W2>V THEN W2=V 220 U. "#####" 230 LOC. 11,0 :PRINT X 240 LOC. 11,1 :PRINT Y 250 U. "###.####" 260 LOC. 16,0 :PRINT VX 270 LOC. 16,1 :PRINT VY 280 LOC. 16,4 :PRINT W1 290 LOC. 16,5 :PRINT W2 300 LOC. 16,3 :PRINT V 310 U. "#####" 320 LOC. 14,2 :PRINT T 330 X=X+VX 340 Y=Y+VY 350 GC. (X,Y) 360 GP. "80" 370 T=T+1 380 IF T>9999 THEN T= 20 390 IF (ABS(X1-X)<2) AND (ABS(Y1-Y)<2) AND 10<T THEN 100 ELSE 120 400 PRINT "ジュウリョクイドニツイラクシマシタ" 410 END
一回画面の外へ出ていったのが戻ってくると結構感動