コード例 #1
0
ファイル: LearModeEasy.cs プロジェクト: Xan5/EnglishTeacher
        public void SetWrongAnswers()
        {
            var rnd        = new Random();
            int wordAmount = WordPool.GetSizeOfPool();

            for (int i = 0; i < 20; ++i)
            {
                int wordNumber = rnd.Next(wordAmount);
                if (wordNumber != answers[i / 2])
                {
                    if (i % 2 == 1)
                    {
                        if (wordNumber != wrongAnswers[i - 1])
                        {
                            wrongAnswers[i] = wordNumber;
                        }
                        else
                        {
                            i--;
                        }
                    }
                    else
                    {
                        wrongAnswers[i] = wordNumber;
                    }
                }
                else
                {
                    i--;
                }
            }
        }
コード例 #2
0
        protected void SetAnswers()
        {
            var rnd        = new Random();
            int wordAmount = WordPool.GetSizeOfPool();

            for (int i = 0; i < 10; ++i)
            {
                int wordNumber = rnd.Next(wordAmount);
                for (int j = 0; j <= i; ++j)
                {
                    if (i == 0)
                    {
                        answers[i] = wordNumber;
                    }
                    else if (answers[j] == wordNumber)
                    {
                        i--;
                        break;
                    }
                    if (j == i)
                    {
                        answers[i] = wordNumber;
                    }
                }
            }
        }
コード例 #3
0
        protected void GetWord()
        {
            var rnd        = new Random();
            int wordAmount = WordPool.GetSizeOfPool();
            int wordNumber = rnd.Next(wordAmount - 1);

            answear = WordPool.Get(wordNumber);
            WordPool.Release(wordNumber);
        }
コード例 #4
0
        public WordList()
        {
            InitializeComponent();
            List <Row> Rows = new List <Row>();

            for (int i = 0; i < WordPool.GetSizeOfPool(); i++)
            {
                string pname = WordPool.Get(i).GetPolishName();;
                WordPool.Release(i);
                string ename = WordPool.Get(i).GetEnglishName();;
                WordPool.Release(i);
                Rows.Add(new Row()
                {
                    pName = pname, eName = ename
                });
            }
            lvWords.ItemsSource = Rows;
        }
コード例 #5
0
        protected override void ShowQuestion()
        {
            EasyTest window = new EasyTest();
            Word     tmp;

            string[] words = new string[3];
            int      i     = 0;

            if (Program.GetLearnType() == false)
            {
                words[0] = GetAnswear().GetEnglishName();
                i++;
                String word = GetAnswear().GetPolishName();
                window.SetWord(word);
                window.SetCorrectAnswer(GetAnswear().GetEnglishName());
                while (i != 3)
                {
                    int correct    = 1;
                    var rnd        = new Random();
                    int wordAmount = WordPool.GetSizeOfPool();
                    int wordNumber = rnd.Next(wordAmount - 1);
                    tmp = WordPool.Get(wordNumber);
                    WordPool.Release(wordNumber);
                    for (int j = 0; j < i; j++)
                    {
                        if (tmp.GetEnglishName() == words[j])
                        {
                            correct = 0;
                        }
                    }
                    if (correct == 1)
                    {
                        words[i] = tmp.GetEnglishName();
                        i++;
                    }
                }
                var rand = new Random();
                int nmb  = rand.Next(0, 3);
                if (nmb == 0)
                {
                    window.SetAnswer1(words[0]);
                    window.SetAnswer2(words[1]);
                    window.SetAnswer3(words[2]);
                }
                if (nmb == 1)
                {
                    window.SetAnswer2(words[0]);
                    window.SetAnswer1(words[1]);
                    window.SetAnswer3(words[2]);
                }
                if (nmb == 2)
                {
                    window.SetAnswer3(words[0]);
                    window.SetAnswer2(words[1]);
                    window.SetAnswer1(words[2]);
                }
            }
            if (Program.GetLearnType() == true)
            {
                words[0] = GetAnswear().GetPolishName();
                i++;
                String word = GetAnswear().GetEnglishName();
                window.SetWord(word);
                window.SetCorrectAnswer(GetAnswear().GetPolishName());
                while (i != 3)
                {
                    int correct    = 1;
                    var rnd        = new Random();
                    int wordAmount = WordPool.GetSizeOfPool();
                    int wordNumber = rnd.Next(wordAmount - 1);
                    tmp = WordPool.Get(wordNumber);
                    WordPool.Release(wordNumber);
                    for (int j = 0; j < i; j++)
                    {
                        if (tmp.GetPolishName() == words[j])
                        {
                            correct = 0;
                        }
                    }
                    if (correct == 1)
                    {
                        words[i] = tmp.GetPolishName();
                        i++;
                    }
                }
                var rand = new Random();
                int nmb  = rand.Next(0, 3);
                if (nmb == 0)
                {
                    window.SetAnswer1(words[0]);
                    window.SetAnswer2(words[1]);
                    window.SetAnswer3(words[2]);
                }
                if (nmb == 1)
                {
                    window.SetAnswer2(words[0]);
                    window.SetAnswer1(words[1]);
                    window.SetAnswer3(words[2]);
                }
                if (nmb == 2)
                {
                    window.SetAnswer3(words[0]);
                    window.SetAnswer2(words[1]);
                    window.SetAnswer1(words[2]);
                }
            }
            window.ShowDialog();

            if (window.correct == 1)
            {
                IncreaseCorrectAnswears();
            }
            if (window.correct == 3)
            {
                endTest = true;
            }
        }