Форум программистов, компьютерный форум, киберфорум
C# Windows Forms
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.63/8: Рейтинг темы: голосов - 8, средняя оценка - 4.63
0 / 0 / 0
Регистрация: 13.10.2020
Сообщений: 139

Проверка ответов с checkbox

27.03.2022, 14:32. Показов 1917. Ответов 6
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Вобщем, пишу программу - тест. Есть несколько вопросов, в каких-то вопросах используется radiobutton, т.е. нужно выбрать один вариант ответа, а в каких-то несколько вариантов ответа, т.е. checkbox. Для radiobutton я использовала такую проверку:
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
if (radioButton1.Checked) { t = 1; radioButton1.Checked = false; }
if (radioButton2.Checked) { t = 2; radioButton2.Checked = false; }
if (radioButton3.Checked) { t = 3; radioButton3.Checked = false; }
if (radioButton4.Checked) { t = 4; radioButton4.Checked = false; }
if (t == pr[k]) itog++;
if (k == (n - 1))
  {
                    panel1.Visible = false;
                    button1.Enabled = false;
                    button2.Enabled = false;
                    textBox2.Text = s + ", Вы набрали " + itog.ToString() + " баллов";
                    return;
   }
 
   k++;
  Вывод(k);
Т.е если какой-то из 4 radiobutton активен, то идёт проверка с массивом ответов. И если правильно, то + балл. А как сделать эту проверку для checkbox если в массиве ответов там одно число. Сделать ещё один массив или для каждого вопроса создавать if(checkBox1.Checked && checkBox2.Checked) { itog++;} ?
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
27.03.2022, 14:32
Ответы с готовыми решениями:

Расстановка ответов с помощью CheckBox'ов
Пишу тест в котором есть вопрос где нужно расположить ответы в правильном порядке (2, 3, 4, 1). Как можно осуществить правильную...

Несколько вариантов ответов в checkbox
Подскажите как правильно реализовать алгоритм. Есть тест с вопросами где на один вопрос может быть несколько ответов. Допустим ответов на...

Проверка ответов
Есть два массива - один с ответами, другой с ответами. На форме кнопка, которая выдает случайно следующий вопрос и 4 radiobutton'a которые...

6
 Аватар для roach1967
984 / 464 / 234
Регистрация: 27.06.2014
Сообщений: 1,035
28.03.2022, 20:32
Ekaterina 12, единственное, что пришло в голову, задать для каждого CheckBox свой двоичный вес:
- для checkBox1 - это '1' (0b00000001),
- для checkBox2 - это '2' (0b00000010),
- для checkBox3 - это '4' (0b00000100),
- для checkBox4 - это '8' (0b00001000).
и для правильного ответа будет только свой единственный вариант выборов CheckBox:
C#
1
2
3
4
5
if (checkBox1.Checked) { t += 1; checkBox1.Checked = false; }
if (checkBox2.Checked) { t += 2; checkBox2.Checked = false; }
if (checkBox3.Checked) { t += 4; checkBox3.Checked = false; }
if (checkBox4.Checked) { t += 8; checkBox4.Checked = false; }
if (t == pr[k]) itog++;
0
0 / 0 / 0
Регистрация: 13.10.2020
Сообщений: 139
30.03.2022, 15:22  [ТС]
roach1967, не совсем понимаю как эта проверка будет проходить. Например, вопрос, где необходимо выбрать два и более варианта ответа. То в массиве pr[k] должно быть одно число, или как? И зачем нужен этот двоичный вес?
0
2810 / 1679 / 885
Регистрация: 14.04.2015
Сообщений: 5,723
30.03.2022, 16:16
Ekaterina 12,
Цитата Сообщение от Ekaterina 12 Посмотреть сообщение
в каких-то вопросах используется radiobutton, т.е. нужно выбрать один вариант ответа, а в каких-то несколько вариантов ответа
почему бы не стандартизировать выбор ответов одним типом элементов (checkbox), и сравнивать номер самого элемента с правильным номером ответа?
вот набросал пример работы. хоть один checkbox выбирайте, хоть все. будут сравниваться номера правильных ответов с выбранными checkbox
Вложения
Тип файла: zip WindowsFormsApp160.zip (447.6 Кб, 14 просмотров)
0
0 / 0 / 0
Регистрация: 13.10.2020
Сообщений: 139
30.03.2022, 16:51  [ТС]
AndreyVorobey, в задании нужно именно использовать radiobutton и checkbox. В вашей программе создаётся список в котором ещё один список с вопросом и номером правильного ответа? Не совсем понимаю данный код, ещё не доводилось пользоваться списками
C#
1
2
3
4
5
6
7
8
 
public List<Data> datas = new List<Data>()
        {
            new Data() { number = 1, isCorrectAnswer = new List<int>(){ 1, 2 } },
            new Data() { number = 2, isCorrectAnswer = new List<int>(){ 3 } },
            new Data() { number = 3, isCorrectAnswer = new List<int>(){ 4 } },
            new Data() { number = 4, isCorrectAnswer = new List<int>(){ 2, 3 } }
        };
0
2810 / 1679 / 885
Регистрация: 14.04.2015
Сообщений: 5,723
30.03.2022, 16:57
Ekaterina 12,
Цитата Сообщение от Ekaterina 12 Посмотреть сообщение
в задании нужно именно использовать radiobutton и checkbox.
и как это у Вас реализовано? как программа понимает, когда нужно использовать radiobutton, а когда checkbox? и что за числа присваиваете, каким образом они отвечают за правильность ответа?
Цитата Сообщение от Ekaterina 12 Посмотреть сообщение
ещё не доводилось пользоваться списками
ну Вы же пользуетесь массивами, список почти то же самое, только с динамическим добавлением объектов в него.
0
 Аватар для roach1967
984 / 464 / 234
Регистрация: 27.06.2014
Сообщений: 1,035
30.03.2022, 19:17
Ekaterina 12, неужели не изучали двоичное представление числа:
- первый разряд (самый младший) имеет вес "1",
- второй - "2",
- третий - "4", и т.д.
т.е. степени двойки.
Для примера: правильный ответ - отмеченные 3-й и 4-й варианты ответов т.е. 0b00001100 -> 8 + 4 = 12.
Можно просто проверить:
C#
1
Console.WriteLine(Convert.ToString(12, 2));
Code
1
1100
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
30.03.2022, 19:17
Помогаю со студенческими работами здесь

Проверка нескольких checkbox
Есть несколько чекбоков и столько же текстбоксов. Как связать каждый чекбокс с каждым текстбоком я разобрался (например,...

Проверка CheckBox.Checked
Ругается не понятно на что if(checkBox.Checked) { textBox.Text = A; textBox1.Text =...

Проверка отмеченности checkbox в listview
Здравствуйте! Подскажите как проверить отмечен ли хотя бы один элемент с checkbox в listview1

Проверка активного CheckBox в GroupBox
Доброго времени суток:) Не получается разобраться со следующей деталью:На форме есть GroupBox,CheckBox и Button. В GroupBox был...

Проверка на отмеченность CheckBox в ListView
Здравствуйте! Есть листвие, в который добавляются элементы с checkbox из файла вот так: ListViewItem item4 = new ListViewItem(g); ...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
7
Ответ Создать тему
Новые блоги и статьи
Вывод данных через динамический список в справочнике
Maks 01.04.2026
Реализация из решения ниже выполнена на примере нетипового справочника "Спецтехника" разработанного в конфигурации КА2. Задача: вывести данные из ТЧ нетипового документа. . .
Функция заполнения текстового поля в реквизите формы документа
Maks 01.04.2026
Алгоритм из решения ниже реализован на нетиповом документе "ВыдачаОборудованияНаСпецтехнику" разработанного в конфигурации КА2, в дополнении к предыдущему решению. На форме документа создается. . .
К слову об оптимизации
kumehtar 01.04.2026
Вспоминаю начало 2000-х, университет, когда я писал на Delphi. Тогда среди программистов на форумах активно обсуждали аккуратную работу с памятью: нужно было следить за переменными, вовремя. . .
Идея фильтра интернета (сервер = слой+фильтр).
Hrethgir 31.03.2026
Суть идеи заключается в том, чтобы запустить свой сервер, о чём я если честно мечтал давно и давно приобрёл книгу как это сделать. Но не было причин его запускать. Очумелые учёные напечатали на. . .
Модель здравосоХранения 6. ESG-повестка и устойчивое развитие; углублённый анализ кадрового бренда
anaschu 31.03.2026
В прикрепленном документе раздумья о том, как можно поменять модель в будущем
10 пpимет, которые всегда сбываются
Maks 31.03.2026
1. Чтобы, наконец, пришла маршрутка, надо закурить. Если сигарета последняя, маршрутка придет еще до второй затяжки даже вопреки расписанию. 2. Нaдоели зима и снег? Не надо переезжать. Достаточно. . .
Перемещение выделенных строк ТЧ из одного документа в другой
Maks 31.03.2026
Реализация из решения ниже выполнена на примере нетипового документа "ВыдачаОборудованияНаСпецтехнику" с единственной табличной частью "ОборудованиеИКомплектующие" разработанного в конфигурации КА2. . . .
Functional First Web Framework Suave
DevAlt 30.03.2026
Sauve. IO Апнулись до NET10. Из зависимостей один пакет, работает одинаково хорошо как в режиме проекта так и в интерактивном режиме. из сложностей - чисто функциональный подход. Решил. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru