DIM ARRY[10]
?ARRY[0],FORMAT$("%D",100)
GOSUB@A
GOTO@B
'A=SIN(B) 
'?Y2,SIN(DAY * 2 * 3.141 / BDAY),LINEH,LINEC
@A
Y2 = LINEC - SIN(DAY * 2 * 3 / BDAY) * LINEH
RETURN
@B
?DATE$, TIME$
DTREAD "2014/10/12" OUT Y,M,D
?Y,M,D
?SIN(1)
'COMMENT'
ASSERT__ 1, "TRUE"
A$="A"
ASSERT__ A$=="A", "A$==A"
A$=A$+"B"
ASSERT__ A$=="AB", "A$==AA"
A=0
INC A
ASSERT__ A==1, "A==1"
INC A, 3
ASSERT__ A==4, "A==4"
DEC A, 3
ASSERT__ A==1, "A==1"
DEC A
ASSERT__ A==0, "A==0"
INCTEST 10
DEF INCTEST A
 INC A
 ASSERT__ A==11, "A==11"
 INC A, 3
 ASSERT__ A==14, "A==14"
 DEC A, 3
 ASSERT__ A==11, "A==11"
 DEC A
 ASSERT__ A==10, "A==10"
END
GOTOTEST
GOTO@SKIP
@LOCAL
ASSERT__ 0, "LOCAL LABEL"
@SKIP
DEF GOTOTEST
 GOTO @LOCAL
 ASSERT__ 0, "LOCAL LABEL"
 @LOCAL
END

ON 1 GOTO @0,@1,@2,@3
@0
 ASSERT__ 0, "ON GOTO"
@2
 ASSERT__ 0, "ON GOTO"
@3
 ASSERT__ 0, "ON GOTO"
@1
ONGOTOTEST
DEF ONGOTOTEST
 ON 1 GOTO @0,@1,@2,@3
 @0
  ASSERT__ 0, "LOCAL ON GOTO"
 @2
  ASSERT__ 0, "LOCAL ON GOTO"
 @3
  ASSERT__ 0, "LOCAL ON GOTO"
 @1
END
ON 1 GOSUB @ONGOSUB0,@ONGOSUB1,@ONGOSUB2,@ONGOSUB3
GOTO@ONGOSUB4
@ONGOSUB0
 ASSERT__ 0, "ON GOSUB"
@ONGOSUB2
 ASSERT__ 0, "ON GOSUB"
@ONGOSUB3
 ASSERT__ 0, "ON GOSUB"
@ONGOSUB1
RETURN
@ONGOSUB4
ONGOSUBTEST
DEF ONGOSUBTEST
 ON 1 GOTO @0,@1,@2,@3
 GOTO@4
 @0
  ASSERT__ 0, "ON ONGOSUB"
 @2
  ASSERT__ 0, "ON ONGOSUB"
 @3
  ASSERT__ 0, "ON ONGOSUB"
 @1
 RETURN
 @4
END
@DATA_1
DIM ARY[2]
DATA "A",1,2,3,4,5
READ DATA$,_1,_2
READ _3,_4
READ ARY[_1]
ASSERT__ DATA$=="A", "DATA"
ASSERT__ _1==1, "DATA"
ASSERT__ _2==2, "DATA"
ASSERT__ _3==3, "DATA"
ASSERT__ _4==4, "DATA"
ASSERT__ ARY[1]==5, "DATA"
?ARY[_1]
INPUT$="HELLO"
INPUT INPUT$,IN
?INPUT$,IN
LOCATE 10,
COLOR 1,15
PRINT "テスト正常終了"