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); }
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); }
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(); }