|
> No.1747[元記事へ]
投稿できないと思い、あせりました。
利用方法を見て、納得です。
!Microsoft Basic 互換モードで動作します。
!下の!問題集に自分で作成した問題、回答を入力、
!ランダム設問、ランダム選択肢が出題されます。
!----------------------------------------------------------------
!並べかえがやっとできました。
!(1)別の外部記憶装置から、問題・回答ファイルを出力
!(2)別ファイルに入力して答案を作成
!(3)答案の採点
!(4)統計解析
!まで行いたいです。
!----------------------------------------------------------------
!【配列宣言】
!WRD$(10,10):これから並べかえる単語
!QTN(10):問題番号
!ANS(10,10):正解の順番の単語
!RES(10,10):回答された順番の単語
001000 OPTION BASE 0
001100 DIM WRD$(10,10),QTN(10),ANS(10,10),RES(10,10)
001200 RANDOMIZE
001300 LET QTN(1)=INT(RND*2)+1
001400 LET QTN(2)=INT(RND*2)+1
001500 IF QTN(2)=QTN(1) THEN GOTO 001400
001600 IF QTN(2)><QTN(1) THEN GOTO 010000
010000 GOSUB 018900
010100 FOR i=1 TO 2
010200 LET h=QTN(i)
010300 PRINT WRD$(h,5)
010400 PRINT " 1."&WRD$(h,A)&" 2."&WRD$(h,B)&" 3."&WRD$(h,C)&" 4."&WRD$(h,D)
010500 INPUT RES(h,1),RES(h,2),RES(h,3),RES(h,4)
010600 IF RES(h,1)><ANS(h,1) OR RES(h,2)><ANS(h,2) OR RES(h,3)><ANS(h,3) OR RES(h,4)><ANS(h,4) THEN GOTO 010500
010700 IF RES(h,1)=ANS(h,1) AND RES(h,2)=ANS(h,2) AND RES(h,3)=ANS(h,3) AND RES(h,4)=ANS(h,4) THEN GOTO 010800
010800 PRINT "正解です。"
010900 PRINT RES(h,1);RES(h,2);RES(h,3);RES(h,4)
010950 GOSUB 018900
011000 NEXT i
011100 END
! 4語の問題集
018900 RANDOMIZE
019000 LET A=INT(RND*4)+1
019100 LET B=INT(RND*4)+1
019200 IF B><A THEN GOTO 019400
019300 IF B=A THEN GOTO 019100
019400 LET C=INT(RND*4)+1
019500 IF C><A AND C><B THEN GOTO 019700
019600 IF C=A OR C=B THEN GOTO 019400
019700 LET D=INT(RND*4)+1
019800 IF D><A AND D><B AND D><C THEN GOTO 020000
019900 IF D=A OR D=B OR D=C THEN GOTO 019700
020000 LET WRD$(1,5)="何を持っていますか?":WRD$(1,1)="What":WRD$(1,2)="do":WRD$(1,3)="you":WRD$(1,4)="have":ANS(1,A)=1:ANS(1,B)=2:ANS(1,C)=3:ANS(1,D)=4
020100 LET WRD$(2,5)="何処を飛んでいますか?":WRD$(2,1)="Where":WRD$(2,2)="do":WRD$(2,3)="you":WRD$(2,4)="fly":ANS(2,A)=1:ANS(2,B)=2:ANS(2,C)=3:ANS(2,D)=4
020200 RETURN
! おっくうの教材作成日記
! を参考にして作成。
nu 201202020615
http://
|
|