1 / 1 / 0
Регистрация: 11.06.2014
Сообщений: 43
1

Как возможно выйти в инструкции switch в начало самой инструкции при нажатии "не правильной" кнопки

23.09.2014, 22:19. Показов 1721. Ответов 3
Метки нет (Все метки)

В целом у меня вопрос такой:
Как возможно выйти в инструкции switch в начало самой инструкции при нажатии не правильной кнопки.
Вот пример:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
switch (vibor){
        case 1:
            if (block2 == vibor)
                cout << "Противник заблокировал удар!\n";
            else {
                cout << "Вы попали!!!\n";
                dmg1 = 1 + rand() % 3;
                hp2 = hp2 - dmg1;
                cout << "У противника осталось " << hp2 << " очков здоровья.\n";
        
                
            }
            break;
 
        case 2:
            if (block2 == vibor)
                cout << "Противник заблокировал удар!\n";
            else{
                cout << "Вы попали!!!\n";
                dmg1 = 1 + rand() % 3;
                hp2 = hp2 - dmg1;
                cout << "У противника осталось " << hp2 << " очков здоровья.\n";
            }
Как мне при "default:" сделать возврат в начало switch.Если вдруг нажал не 1 или не 2,заного можно было ввести выбор .
__________________
Помощь в написании контрольных, курсовых и дипломных работ, диссертаций здесь
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
23.09.2014, 22:19
Ответы с готовыми решениями:

"Инструкции FPU" и "Инструкции ЦП" применительно к интеловским процессорам
Само видео можно не смотреть, у меня вопрос по части комментария к нему...

Как сделать, чтобы при нажатии кнопки "наверх" происходил плавный переход в начало страницы
Здравствуйте. Вот написал программку перемещения наверх при нажатии кнопки. Теперь не знаю, как...

"Как установить SQL Server " 2008 ошибка при выполненнии пункта 11 инструкции
При выполнении пункта 11. Выбрать опцию «Экземпляр по умолчанию» и нажать кнопку «Далее»...

Как сделать так чтоб при нажатии кнопки "enter" происходило нажатие кнопки "button1" на форме
Пишу программу которая должна сложить числа по нажатии кнопки &quot;button1&quot;. Подскажите, пожалуйста,...

3
Модератор
Эксперт С++
12446 / 10010 / 6025
Регистрация: 18.12.2011
Сообщений: 26,795
23.09.2014, 22:32 2
Лучший ответ Сообщение было отмечено erampa как решение

Решение

C++
1
2
3
4
5
6
do
{
   cin>>vibor;
  switch(....
 .....
}while(vibor!=1 && vibor!=2);
2
1 / 1 / 0
Регистрация: 11.06.2014
Сообщений: 43
23.09.2014, 22:56  [ТС] 3
Но, если я нажму не цифру,а припустим букву,у меня цикл будет длится бесконечно вниз.
0
Комп_Оратор)
Эксперт по математике/физике
8758 / 4500 / 605
Регистрация: 04.12.2011
Сообщений: 13,428
Записей в блоге: 16
24.09.2014, 01:14 4
Цитата Сообщение от erampa Посмотреть сообщение
Как мне при "default:" сделать возврат в начало switch.
Как вариант:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
#include <iostream>
using namespace std;
 
void fn_switch(){
cout<<"Enter number from 1 to 3 uncluding"<<endl;
int n;
    cin>>n;
switch(n){
case 1: cout<<1; break;
case 2: cout<<2; break;
case 3: cout<<3; break;
default:  cout<<"\nBad luck, try agein!"<<endl; fn_switch();    
    }
}
 
int main()
{
fn_switch();
    
    cout<<endl; 
        system("pause");
     return 0;
}


Добавлено через 1 минуту
Цитата Сообщение от erampa Посмотреть сообщение
Но, если я нажму не цифру,а припустим букву,у меня цикл будет длится бесконечно вниз.
И так ему и надо. Иначе не получится:
Цитата Сообщение от erampa Посмотреть сообщение
Как возможно выйти в инструкции switch в начало самой инструкции при нажатии не правильной кнопки.
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
24.09.2014, 01:14
Помогаю со студенческими работами здесь

Что такое блоки и инструкции, вложенные инструкции и главные инструкции?
Что это такое?

Что означает "набор полей" в инструкции "ALTER TABLE"?
Здравствуйте! Прочитал статью...

Создание "инструкции" и "авторские права" в программе
Здравствуйте! Я создал программу для &quot;Расчёта НДС&quot; с некоторыми функциями... Необходимо создать...

Как при нажатии одной кнопки сделать "нажатие" другой кнопки?
Как скажем при нажатии одной кнопки сделать &quot;нажатие&quot; другой кнопки? Именно чтобы была анимация...

Ошибка при записи в бд из текст боксов "Ошибка синтаксиса в инструкции INSERT INTO"
Пытаюсь добавить в базу информацию из разных Текст боксов... Но почему то получаю...

Ошибка при обновлении : "Ошибка синтаксиса в инструкции INSERT INTO."
Ошибка при обновлении : &quot;Ошибка синтаксиса в инструкции INSERT INTO.&quot; ...


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

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

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2022, CyberForum.ru