Обновление переменной в визуальном коде C# для использования в вычислениях и отображения в веб-форме. ⇐ C#
Обновление переменной в визуальном коде C# для использования в вычислениях и отображения в веб-форме.
Итак, я пишу простой код C# для расчета среднего балла пользователя по группе его классов. Всем классам присваивается 3 балла, и они выбирают свою оценку с помощью раскрывающегося списка, содержащего элементы от A до F, причем каждый элемент списка имеет свое собственное значение на основе стандартной схемы оценок GPA.
Проблема, с которой я столкнулся, заключается в обновлении переменной, которую я создал с целью отслеживания суммы среднего балла пользователя по всем его классам, с целью отображения им этого числа и деления этого числа. по количеству курсов, которые они проходят, с целью получения среднего значения с точностью до двух десятичных знаков.
Что бы я ни делал, значение не будет обновляться (отмечено в пользовательском методе GPACarrier()) и содержит только самое последнее введенное значение, а не добавляет новые введенные значения. к сумме. Например, если пользователь должен отметить два класса, один с буквой A, а другой с буквой B, вместо переменной суммы GPA, содержащей 7,00, она будет содержать только последнее значение GPA, введенное пользователем, поэтому, если они введут Наконец, переменная суммы GPA будет иметь значение только 3,00.
Я пытался перенести вычисления из исходного метода, в котором они существовали, создав собственный метод и изменив способ написания кода, но, возможно, у меня в голове возникла логическая проблема, потому что я не мог подумайте о любых других решениях, кроме незначительной синтаксической ошибки, которая могла бы вызвать эту проблему.
защищенное десятичное значение GPAAverage; защищенное десятичное значение ValueSum; защищенное десятичное значение GPASum = 0,00m; защищенный десятичный ValueOutput; защищенное десятичное значение GPATempValue = 0,00 м; protected void Page_Load (отправитель объекта, EventArgs e) { } protected void GPACarrier (отправитель объекта, EventArgs e) { GPATempValue = Convert.ToDecimal(LetterGradeList.SelectedValue); GPASum += GPATempValue; } protected void ContinueButton_Click (отправитель объекта, EventArgs e) { StudentInformationLabel.Text = LastNameBox.Text + ", " + FirstNameBox.Text + " (" + MajorList.SelectedValue + ")"; GPACalculatePage.Visible = true; StudentInformationPage.Visible = ложь; } protected void AddCourseLinkButton_Click (отправитель объекта, EventArgs e) { AddClassPanel.Visible = правда; } protected void SubmitButton_Click (отправитель объекта, EventArgs e) { GPACarrier(отправитель, е); String NewCourse = PrefixBox.Text + " " + CourseNumberBox.Text + " " + "(" + LetterGradeList.SelectedItem.Text + ")"; CourseHistoryList.Items.Add(new ListItem(NewCourse, LetterGradeList.SelectedValue)); Label1.Text = Convert.ToString(GPATempValue); AddClassPanel.Visible = ложь; ПрефиксБокс.Текст = " "; НомерКурса.Текст = " "; LetterGradeList.ClearSelection(); }
Итак, я пишу простой код C# для расчета среднего балла пользователя по группе его классов. Всем классам присваивается 3 балла, и они выбирают свою оценку с помощью раскрывающегося списка, содержащего элементы от A до F, причем каждый элемент списка имеет свое собственное значение на основе стандартной схемы оценок GPA.
Проблема, с которой я столкнулся, заключается в обновлении переменной, которую я создал с целью отслеживания суммы среднего балла пользователя по всем его классам, с целью отображения им этого числа и деления этого числа. по количеству курсов, которые они проходят, с целью получения среднего значения с точностью до двух десятичных знаков.
Что бы я ни делал, значение не будет обновляться (отмечено в пользовательском методе GPACarrier()) и содержит только самое последнее введенное значение, а не добавляет новые введенные значения. к сумме. Например, если пользователь должен отметить два класса, один с буквой A, а другой с буквой B, вместо переменной суммы GPA, содержащей 7,00, она будет содержать только последнее значение GPA, введенное пользователем, поэтому, если они введут Наконец, переменная суммы GPA будет иметь значение только 3,00.
Я пытался перенести вычисления из исходного метода, в котором они существовали, создав собственный метод и изменив способ написания кода, но, возможно, у меня в голове возникла логическая проблема, потому что я не мог подумайте о любых других решениях, кроме незначительной синтаксической ошибки, которая могла бы вызвать эту проблему.
защищенное десятичное значение GPAAverage; защищенное десятичное значение ValueSum; защищенное десятичное значение GPASum = 0,00m; защищенный десятичный ValueOutput; защищенное десятичное значение GPATempValue = 0,00 м; protected void Page_Load (отправитель объекта, EventArgs e) { } protected void GPACarrier (отправитель объекта, EventArgs e) { GPATempValue = Convert.ToDecimal(LetterGradeList.SelectedValue); GPASum += GPATempValue; } protected void ContinueButton_Click (отправитель объекта, EventArgs e) { StudentInformationLabel.Text = LastNameBox.Text + ", " + FirstNameBox.Text + " (" + MajorList.SelectedValue + ")"; GPACalculatePage.Visible = true; StudentInformationPage.Visible = ложь; } protected void AddCourseLinkButton_Click (отправитель объекта, EventArgs e) { AddClassPanel.Visible = правда; } protected void SubmitButton_Click (отправитель объекта, EventArgs e) { GPACarrier(отправитель, е); String NewCourse = PrefixBox.Text + " " + CourseNumberBox.Text + " " + "(" + LetterGradeList.SelectedItem.Text + ")"; CourseHistoryList.Items.Add(new ListItem(NewCourse, LetterGradeList.SelectedValue)); Label1.Text = Convert.ToString(GPATempValue); AddClassPanel.Visible = ложь; ПрефиксБокс.Текст = " "; НомерКурса.Текст = " "; LetterGradeList.ClearSelection(); }
-
- Похожие темы
- Ответы
- Просмотры
- Последнее сообщение