Actionscript 3 嗨,我想用actionscript创建一个测验
我有20个问题和5个答案,我想得到的是唯一的答案Actionscript 3 嗨,我想用actionscript创建一个测验,actionscript-3,actionscript,Actionscript 3,Actionscript,我有20个问题和5个答案,我想得到的是唯一的答案 " a , b , c, d, e " 为每个问题选择答案 每次用户进入测验,所有的问题和答案都将被统一加载 我的主要问题是我不能得到唯一的答案, 例如,对于问题1 What is the day 我最终得到了同样的答案 a ) monday b) tuesday c) monday d)thursday e) saturday..... 我无法加载不同的uniqe答案 这怎么可能呢,我试过拼接阵列,但它只会把事情搞砸 你可以这
" a , b , c, d, e "
为每个问题选择答案
每次用户进入测验,所有的问题和答案都将被统一加载
我的主要问题是我不能得到唯一的答案,例如,对于问题1
What is the day
我最终得到了同样的答案
a ) monday b) tuesday c) monday d)thursday e) saturday.....
我无法加载不同的uniqe答案
这怎么可能呢,我试过拼接阵列,但它只会把事情搞砸 你可以这样做。
var anwers:Array = ["Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday", "Sunday"];
var selectedAnswers:Array = new Array(5); // array for selected answers
var tmp:Number = Math.floor(Math.random*5);
var correct:String = answers[0]; // let "Monday" be the correct answer
selectedAnswers[tmp] = correct; // correct answer set to a random position
for(var i:Number=0; i<5; i++){
tmp=Math.floor(Math.random*5);
if(selectedAnswers[i].equals(correct)) continue; //skip for the correct answer
if(selectedAnswers.indexOf(answers[tmp])<0){ // set answer if not present already
selectedAnswers[i] = answers[tmp];
} else {
i--; // loop again if answer is set earlier
}
}
var-anwers:Array=[“周一”、“周二”、“周三”、“周四”、“周五”、“周六”、“周日”];
var selectedAnswers:Array=新数组(5);//选定答案的数组
var tmp:Number=Math.floor(Math.random*5);
变量正确:字符串=答案[0];//让“星期一”成为正确答案
所选答案[tmp]=正确;//将正确答案设置为随机位置
for(var i:Number=0;i创建一个答案数组,以及一个从数组中随机选择5个答案的函数。您能告诉我们失败的代码吗?
var anwers:Array = ["Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday", "Sunday"];
var selectedAnswers:Array = new Array(5); // array for selected answers
var tmp:Number = Math.floor(Math.random*5);
var correctIndex:Number = 0; // let "Monday" be the correct answer
var correct:String = answers[correctIndex];
selectedAnswers[tmp] = correct; // correct answer set to a random position
var j:Number = correctIndex; // temporary index
var offset:Number = 2; // unique for this answer set
// so that the answers won't overlap for 5 choices
for(var i:Number=0; i<4; i++){ // not completely random (yet give random answers for specific cases)
tmp++;
if(tmp==5) tmp = 0;
j += offset;
if(j>answers.length) j -= answers.length;
selectedAnswers[tmp] = answers[j];
}