|
> No.4179[元記事へ]
たこすさんへのお返事です。
> このプログラムはドンピシャでした。
私、超能力ある?
私、日本語苦手なので、説明も下手です。段階を追って、3つ書きました。
--------------------------------------
SET bitmap SIZE 600,600
SET WINDOW -10,10,-10,10
LET A=10
10
DO
LET t1=TIME
IF MOD(IP(t1/ 0.5+ta),2)=0 THEN
LET ta=ta+1
CLEAR
DRAW grid
LET A=A-1
SET COLOR 2
DRAW ao WITH SHIFT(0,A)
SET COLOR 4
DRAW ao WITH SHIFT(0,A+1)
GOTO 10
END IF
LOOP UNTIL A=0
PICTURE ao
PLOT AREA:3,0;3,1;1,1;1,0
PLOT AREA:-1,0;-1,1;-3,1;-3,0
END PICTURE
END
----------------------------------------
SET bitmap SIZE 600,600
SET WINDOW -10,10,-10,10
LET A=10
10
DO
LET t1=TIME
IF MOD(IP(t1/ 0.5+ta),2)=0 THEN
LET ta=ta+1
CLEAR
DRAW grid
LET A=A-1
IF MOD(A,2)=0 THEN
SET COLOR 2
DRAW ao WITH SHIFT(0,A)
ELSE
SET COLOR 4
DRAW ao WITH SHIFT(0,A+1)
END IF
GOTO 10
END IF
LOOP UNTIL A=0
PICTURE ao
PLOT AREA:3,0;3,1;1,1;1,0
PLOT AREA:-1,0;-1,1;-3,1;-3,0
END PICTURE
END
------------------------------------
SET bitmap SIZE 600,600
SET WINDOW -10,10,-10,10
LET A=10
LET B=10
DO
LET t1=TIME
IF MOD(IP(t1/ 0.5+ta),2)=0 THEN
LET ta=ta+1
CLEAR
DRAW grid
LET A=A-1
IF A<0 THEN
LET B=B-1
SET COLOR 2
DRAW ao WITH SHIFT(0,0)
SET COLOR 4
DRAW ao WITH SHIFT(0,B)
ELSE
SET COLOR 2
DRAW ao WITH SHIFT(0,A)
END IF
END IF
LOOP UNTIL B<2
PICTURE ao
PLOT AREA:3,0;3,1;1,1;1,0
PLOT AREA:-1,0;-1,1;-3,1;-3,0
END PICTURE
END
--------------------------
ご依頼のタイプは3番目のプログラムだと思われます。
少し遊んで見ました。
SET bitmap SIZE 600,600
SET WINDOW -10,10,-10,10
LET A=10
LET B=10
LET C=10
DO
LET t1=TIME
IF MOD(IP(t1/ 0.5+ta),2)=0 THEN
LET ta=ta+1
CLEAR
DRAW grid
LET A=A-1
IF A<0 THEN
LET B=B-1
SET COLOR 2
DRAW ao WITH SHIFT(0,0)
SET COLOR 4
DRAW ao WITH SHIFT(0,B)
END IF
IF B<0 THEN
LET C=C-1
SET COLOR 2
DRAW ao WITH SHIFT(0,0)
SET COLOR 4
DRAW ao WITH SHIFT(0,1)
SET COLOR 3
DRAW ao WITH SHIFT(0,C)
ELSE
SET COLOR 2
DRAW ao WITH SHIFT(0,A)
END IF
END IF
LOOP UNTIL C=2
PICTURE ao
PLOT AREA:3,0;3,1;1,1;1,0
PLOT AREA:-1,0;-1,1;-3,1;-3,0
END PICTURE
END
http://blogs.yahoo.co.jp/donald_stinger
|
|