Exemplo n.º 1
0
    // get randome quesyion get elemnt from questionpool randomly
    private Gene GetRandomQuestion(int GIndex)
    {
        if (GIndex == 0)
        {
            QuestionTList = new List <Qtype>(SQuestionTList);
            QuestionList  = new List <Gene>(SQuestionList1);
            foreach (Qtype qt in QuestionTList)
            {
                qt.numquestion = qt.numOfType;
            }
        }
        foreach (Qtype qt in QuestionTList)
        {
            if (qt.numquestion <= 0)
            {
                QuestionList.RemoveAll(x => x.type.Equals(qt.name));
            }
        }

        //Response.Write("<script>alert('"+(QuestionList1.Count - 1)+"')</script>");
        randome = new System.Random();
        // int i = randome.Next(QuestionList.Count);
        //return QuestionList[i];
        int  l   = QuestionList.Count - 1;
        int  i   = randome.Next(l);
        Gene qst = (Gene)(QuestionList[i].Clone());

        QuestionTList.Find(x => x.name.Equals(qst.type)).numquestion--;
        QuestionList.RemoveAt(i);
        //Response.Write(qst.Answer + "    " + i + "\r\n");
        return(qst);
        // return QuestionPool[randome.Next(QuestionPool.Length - 1)];
    }