Форум программистов, компьютерный форум, киберфорум
Наши страницы
C++ Builder
Войти
Регистрация
Восстановить пароль
 
sorokolit
1 / 1 / 1
Регистрация: 17.01.2015
Сообщений: 66
#1

Как посчитать правильные ответы RadioGroup? - C++ Builder

08.02.2015, 14:04. Просмотров 860. Ответов 8
Метки нет (Все метки)

как посчитать правильные ответы RadioGroup ? в делфи я так делал
Delphi
1
2
3
4
case radiogroup1.itemindex of
 
0..2 bal:=0;
3: bal:=1;
а как такое в c++?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
08.02.2015, 14:04
Я подобрал для вас темы с готовыми решениями и ответами на вопрос Как посчитать правильные ответы RadioGroup? (C++ Builder):

Как использовать направление ЭДС и правильные формулы для тока, баланса мощностей и как повернуть прямоугольник на 30' и 130'?
В файле вложена картина предварительного интерфейса и работы программы. Расчет...

Как программно установить конкретный переключатель группы RadioGroup
Как программно установить конкретный переключатель группы RadioGroup в...

Как сохранить настройки компонента RadioGroup в Ini-файле?
Мучаюсь над такой проблемой С таким кодом сохраняет только до двух точек а...

Как подгрузить Ответы и их Решения в программу-тест?
Создал отдельную тему. Суть вопроса:Нужно подгружать вопросы и ответы . С...

Не могу разобраться как юзать ответы где дают код
Искал в гугле cpp рисование точки на экране. Зашел на ваш форум и нашел там...

Работа с RadioGroup. Как сделать возможным только один выбор кнопки, без возможности изменения решения?
Здравствуйте! Подскажите пожалуйста, у меня есть элемент RadioGroup. Как...

8
IrineK
Заблокирован
08.02.2015, 14:08 #2
Цитата Сообщение от sorokolit Посмотреть сообщение
а как такое в c++?
В Builder C++?
0
volvo
Супер-модератор
Эксперт Pascal/DelphiАвтор FAQ
25622 / 17175 / 6830
Регистрация: 22.10.2011
Сообщений: 30,369
Записей в блоге: 6
08.02.2015, 14:08 #3
C++
1
bal = (RadioGroup1->ItemIndex == 3 ? 1 : 0);
0
sorokolit
1 / 1 / 1
Регистрация: 17.01.2015
Сообщений: 66
08.02.2015, 16:51  [ТС] #4
спасибо, работает, но как сделать тоже самое только с оператором выбора или условия так как у меня несколько Radiogroup
Delphi
1
2
3
4
5
6
7
8
9
case radiogroup1.itemindex of
 
0..2 bal:=0;
3: bal:=1;
 
case radiogroup2.itemindex of
 
0,1,3 bal:=0;
2: bal:=bal+1;
0
volvo
Супер-модератор
Эксперт Pascal/DelphiАвтор FAQ
25622 / 17175 / 6830
Регистрация: 22.10.2011
Сообщений: 30,369
Записей в блоге: 6
08.02.2015, 16:55 #5
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
switch(RadioGroup1->ItemIndex)
{
    case 0:
    case 1:
    case 2:
        bal = 0; break;
    case 3:
        bal = 1;
}
 
// ...
 
switch(RadioGroup2->ItemIndex)
{
    case 0:
    case 1:
    case 3:
        bal = 0; break;
    case 2:
        bal = 1;
}
, и так далее... Хотя что мешает сделать так, как написано выше:
C++
1
2
3
4
bal = (RadioGroup1->ItemIndex == 3 ? 1 : 0);
// тут что-то делать с bal-ом
bal = (RadioGroup2->ItemIndex == 2 ? 1 : 0);
// тут опять что-то делать
мне по-прежнему непонятно... Чем больше строк кода - тем лучше, что-ли?
0
sorokolit
1 / 1 / 1
Регистрация: 17.01.2015
Сообщений: 66
08.02.2015, 17:02  [ТС] #6
IrineK, да

Добавлено через 2 минуты
volvo, если делать по второму варианту то он считает только последний RadioGroup

Добавлено через 3 минуты
volvo,
C++
1
2
3
4
5
6
7
8
switch(RadioGroup1->ItemIndex)
{
    case 0:
    case 1:
        bal = 0; break
    case 2:
        bal = 1;
}
на строчке case 2: ошибка
0
demmax2004
116 / 138 / 46
Регистрация: 31.10.2014
Сообщений: 721
Записей в блоге: 1
08.02.2015, 17:12 #7
Напиши так
C++
1
bal = 0; break;
0
volvo
Супер-модератор
Эксперт Pascal/DelphiАвтор FAQ
25622 / 17175 / 6830
Регистрация: 22.10.2011
Сообщений: 30,369
Записей в блоге: 6
08.02.2015, 17:12 #8
Цитата Сообщение от sorokolit Посмотреть сообщение
на строчке case 2: ошибка
Точку с запятой добавь после break...
Цитата Сообщение от sorokolit Посмотреть сообщение
если делать по второму варианту то он считает только последний RadioGroup
Можно подумать, что по первому варианту он считает по-другому. То же самое и считается...

Сделай:
C++
1
2
3
4
int bal = 0;
 
bal += (RadioGroup1->ItemIndex == 3 ? 1 : 0);
bal += (RadioGroup2->ItemIndex == 2 ? 1 : 0);
- будет считать, в скольких RadioGroup-ах был дан верный ответ...
0
sorokolit
1 / 1 / 1
Регистрация: 17.01.2015
Сообщений: 66
08.02.2015, 17:17  [ТС] #9
Разобрался. помогло вот это:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
void __fastcall TForm1::Button1Click(TObject *Sender)
{
bal=0;
switch(RadioGroup1->ItemIndex)
{
    case 0:
    case 1: bal = bal+0; break;
    case 2: bal = bal+1;
}
switch(RadioGroup2->ItemIndex)
{
    case 0:
    case 2:
        bal = bal+0; break;
    case 1:
        bal = bal+1;
 
}
Label1->Caption=IntToStr(bal);
}
Добавлено через 1 минуту
C++
1
2
3
4
5
6
7
8
9
void __fastcall TForm1::Button1Click(TObject *Sender)
{
bal=0;
switch(RadioGroup1->ItemIndex)
{
bal += (RadioGroup1->ItemIndex == 2 ? 1 : 0);
bal += (RadioGroup2->ItemIndex == 1 ? 1 : 0);
Label1->Caption=IntToStr(bal);
}}
тоже помогло) спасибо
0
08.02.2015, 17:17
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
08.02.2015, 17:17
Привет! Вот еще темы с решениями:

Как в RadioGroup "нарисовать" x в квадрате, чтоб эстетично было?
День добрый. С наступающим! Прощения прошу за то , что влез не в свою тему. не...

RadioGroup
Доброе время суток!!! Подскажите, пожалуйста, такую вещь. Возможно ли...

RadioGroup Multiselect
Приветствую! Пишу программу-тест. Необходимо реализовать множественный...

Посчитать правильные и неправильные ответы пользователя.
Товарищи форумчане! Прошу вашей помощи, нужно посчитать правильные и...


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

Или воспользуйтесь поиском по форуму:
9
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru