Esempio n. 1
0
 private void OkButton_Click(object sender, EventArgs e) //Знаю
 {
     Global.QSet[i].ratio = string.Concat(Global.QSet[i].ratio, "Y");
     if (Global.QSet[i].ratio.Length > 4)
     {
         Global.QSet[i].ratio = Global.QSet[i].ratio.Remove(0, 1);
     }
     if (Global.QSet[i].Queue_name == "A")
     {
         Global.CorrectErrorInQueue("A", 1);
         Global.QSet[i].Queue_place = Global.LastPlaceInQueue("B");
         Global.QSet[i].Queue_name  = "B";
     }
     else
     {
         Global.CorrectErrorInQueue(Global.QSet[i].Queue_name, 1);
         Global.QSet[i].Queue_name  = "Debug";
         Global.QSet[i].Queue_place = Global.LastPlaceInQueue("C");
         Global.QSet[i].Queue_name  = "C";
     }
     i = ChooseQuestion();
     QuestionShow.Text = Global.QSet[i].Text;//+"/" + Global.QSet[i].Queue_name+ "-" + Global.QSet[i].Queue_place + "-" + Global.QSet[i].ratio + "-" + Global.GetRatio(Global.QSet[i].ratio);
     NQ.Text           = "Вопрос №" + Global.QSet[i].id;
     showRating.Text   = "Выучен на: " + Global.GetRatio(Global.QSet[i].ratio);
 }
Esempio n. 2
0
        int ButNotThis = -100; //последний показанный вопрос

        ///////////////////////////////////////////////////////
        public int ChooseQuestion() // Выбрать следующий вопрос
        {
            Random rand = new Random();
            int    l;

            do
            {
                string s;
                do
                {
                    s = null;
                    int a = rand.Next(9);
                    if (a < 5)
                    {
                        s = "A";
                    }
                    else if (a == 8)
                    {
                        s = "C";
                    }
                    else
                    {
                        s = "B";
                    }
                } while (Global.LastPlaceInQueue(s) == 1); //вдруг в очереди нет вопросов
                l = 0;
                bool Mi = true;
                for (int k = 0; (k < Global.QSet.Count) && (Mi); k++)
                {
                    if ((Global.QSet[k].Queue_name == s) && (Global.QSet[k].Queue_place == 1))
                    {
                        l  = k;
                        Mi = false;
                    }
                }
            } while ((l == ButNotThis) || (l == AndNothis)); //2 последних вопроса не показываем.
            if (Global.QSet.Count > 2)
            {
                ButNotThis = AndNothis;
                AndNothis  = l;
            }
            return(l);
        }
Esempio n. 3
0
        private void Next_Click(object sender, EventArgs e) //Добавить
        {
            if (IndexExists(textBox1.Text))
            {
                MessageBox.Show("Вопрос с таким номером уже существует!");
                return;
            }
            int a = -10;

            try
            {
                a = Convert.ToInt32(textBox1.Text);
            }
            catch
            {
                MessageBox.Show("Номер вопроса должен быть натуральным, положительным числом!");
                return;
            }
            if (a <= 0)
            {
                MessageBox.Show("Номер вопроса должен быть натуральным, положительным числом!");
                return;
            }
            Global.Question New = new Global.Question();
            New.Text        = QuestionWrite.Text;
            New.Queue_place = Global.LastPlaceInQueue("A");
            New.id          = textBox1.Text;
            New.Queue_name  = "A";
            New.ratio       = null;
            Global.QSet.Add(New);
            Global.QSet.Sort(new Global.Question.SortById());
            FillDataGridView(Global.QSet);
            QuestionWrite.Text = null; //обновим
            textBox1.Text      = (MaxIndex(Global.QSet) + 1) + "";
            if (Global.QSet.Count > 0)
            {
                Delete.BackColor = Color.FromArgb(255, 255, 192);
                Delete.Enabled   = true;
                Change.BackColor = Color.FromArgb(255, 255, 192);
                Change.Enabled   = true;
            }
            QuestionWrite.Focus();
        }