こんな感じで正解データをコンマで区切る形で一つの文字列として持っておき、
ユーザーが入力した答えの前後にコンマを付加した上で検索すれば、
比較的楽にできるのではないかと思います。
//正解データ
corr =",北海道,青森県,秋田県,岩手県,宮城県,山形県,福島県,茨城県,栃木県,群馬県," //最初の答えの前にもコンマを付ける
corr+="埼玉県,千葉県,東京都,山梨県,神奈川県,静岡県,新潟県,富山県,石川県,福井県,"
corr+="長野県,愛知県,岐阜県,滋賀県,三重県,京都府,奈良県,和歌山県,大阪府,兵庫県,"
corr+="鳥取県,岡山県,島根県,広島県,山口県,香川県,愛媛県,徳島県,高知県,福岡県,"
corr+="大分県,佐賀県,長崎県,宮崎県,熊本県,鹿児島県,沖縄県," //最後の答えの後ろにもコンマを付ける
sdim ans,64,5 //回答格納用
dim suc,5 //正解か不正解か(0は不正解、1は正解、-1は正しいが重複している)
mes "日本の都道府県名を5つ挙げてください。\n後ろには『都』『道』『府』『県』を付けて答えてください。"
objsize 100,30
repeat 5
pos 0,40+30*cnt : input ans(cnt)
loop
pos 0,200 : button gosub "答える",*answer
stop
*answer
over="" //重複検出用
repeat 5
chk=ans(cnt)
strrep chk," ","" //半角スペースを削除
strrep chk," ","" //全角スペースを削除
strrep chk,",","" //コンマを削除
chk=","+chk : chk+="," //前後にコンマを付加
if instr(over,0,chk)!=-1 {
//重複検出
suc(cnt)=-1
} else {
if instr(corr,0,chk)=-1 {
//不正解
suc(cnt)=0
} else {
//正解
suc(cnt)=1
over+=chk
}
}
loop
color 255,255,255 : boxf 0,40,300,200
repeat 5
pos 110,40+30*cnt
switch suc(cnt)
case 1
color 255,0,0 : mes "正解!"
swbreak
case -1
color 0,0,255 : mes "重複により不正解"
swbreak
default
color 0,0,255 : mes "不正解"
swbreak
swend
loop
return