Форум программистов, компьютерный форум, киберфорум
Наши страницы

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 12, средняя оценка - 5.00
knf
16 / 16 / 2
Регистрация: 18.09.2012
Сообщений: 184
#1

Выход по нажатию ESC - C++

03.03.2013, 12:57. Просмотров 2012. Ответов 4
Метки нет (Все метки)

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
#include "stdafx.h"
#include <iostream>
#include <conio.h>
float sum();
float razn();
float del();
float proizv();
float fact();
 
#define ESC 27
using namespace std;
int main()
{   float x;
    char choice,c;
    c=' ';
    choice=' ';
    
    
    while (c==1);
    {
    printf("Bb|bepute deu`ctBue\n");
    printf("+ summa, - raznoctb, \ deJIeHue,* proizv,\n! faktoruaJI,sqrt KoPeHb kBadpatHb|u`,\n dJI9 Bb|xoda Hajmu ESC ");
    
    cin >> choice;
    switch(choice)
    {
      case '+' : 
          x=sum();
          break;
      case '-':
          x=razn();
          break;
      case '\\' :
          x=del();
          break;
      case '*' :
          x=proizv();
          break;
      case '!' :
          x=fact();
          break;            
      default : 
          cout << "Takogo deu`cTBu9 Het\n";
          break;
 
    }
     if (kbhit() && getch() == ESC)
         break;
    }
    
    getch();
    
    
}
float sum()
{   float rez,a,b;
 
    cout <<"BBedute 2 4ucJIa\n";
    cin >>a,b;
    rez=a+b;
    return rez;
}
 
float razn()
{   float rz,a,b;
 
    cout <<"BBedute 2 4ucJIa\n";
    cin >>a,b;
    rz=a-b;
    return rz;
}
float del()
{   float rz,a,b;
 
    cout <<"BBedute 2 4ucJIa\n";
    cin >>a,b;
    rz=a/b;
    return rz;
 
}
 
float proizv()
{   float rz,a,b;
 
    cout <<"BBedute 2 4ucJIa\n";
    cin >>a,b;;
    rz=a*b;
    return rz;
 
}
float fact()
{ float rz,a;
    rz=1;
    cout<< "BBedute 4ucJIo\n";
    cin >> a;
    for (int i=1; i<=a; i++)
        rz=rz*i;
 
    return rz;
}
Ругается в этом месте:
C++
1
2
 if (kbhit() && getch() == ESC)
         break;
Недопустимый break...
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
03.03.2013, 12:57
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Выход по нажатию ESC (C++):

Выход из программы по нажатию Esc - C++
подскажите как сделать чтобы по нажатию ESC выводился результат.затупил чутка int main(){ setlocale(LC_ALL, &quot;RUS&quot;); toll_Both...

Выход по ESC - C++
Приветствую вас уважаемые &quot;чатлане&quot;! .Пишет вам &quot;пацак&quot;. Я начал с Borland C++ 3.1. Наверное все очень просто на самом деле, но как и у...

Выход из программы по нажатии esc - C++
Ребят, как реализовать досрочный выход из программы на любом этапе ее выполнения, желательно по нажатии клавиши ESC?

Выход по Esc из любого места программы - C++
Привет! Изучаю С++ на примере создания консольной программы. Типа - ввели данные, вывели данные. Вопрос - а как выйти из...

Отмена ввода по нажатию ESC - C++
Как отменить все введенное и выйти если пользователь нажал ESC? (желательно с использованием консольного буфера ввода) Добавлено через...

Выход из консоли по нажатию клавиши - C++
Что надо вставить, что бы по нажатию клавиши, скажем, &lt;Enter&gt; произошел выход из консольной программы.

4
Last_Night
19 / 19 / 0
Регистрация: 02.10.2012
Сообщений: 124
03.03.2013, 13:10 #2
используй exit, находится он в библиотеке sdtlib.h
0
Kuzia domovenok
1951 / 1804 / 140
Регистрация: 25.03.2012
Сообщений: 6,245
Записей в блоге: 1
03.03.2013, 13:43 #3
Цитата Сообщение от knf Посмотреть сообщение
if (kbhit() && getch() == ESC)
какой смысл проверять kbhit? Это имеет смысл делать, если при отсутствии нажатия клавиши программа должна всё равно что-то считать.
делай if (getch()==ESC)
0
knf
16 / 16 / 2
Регистрация: 18.09.2012
Сообщений: 184
03.03.2013, 14:39  [ТС] #4
Last_Night, Ладно, а тогда что вместо continue тут использовать можно?
0
Tolias28
206 / 122 / 2
Регистрация: 18.08.2010
Сообщений: 1,011
04.03.2013, 12:22 #5
Цитата Сообщение от knf Посмотреть сообщение
Last_Night, Ладно, а тогда что вместо continue тут использовать можно?
Зачем вам там continue? Если по клавише Escape вам нужно вовзратиться на определенные строки, тогда замените if на while. Что-то типа этого:
while (kbhit() && getch() == ESC)
1
04.03.2013, 12:22
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
04.03.2013, 12:22
Привет! Вот еще темы с ответами:

Выход из выполнения по нажатию кнопки - C++
Доброго времени суток. Нужен код, с помощью которого можно выйти в любой момент из выполнения программы. Если нагляднее: программы...

Выход из цикла по нажатию определенной клавиши - C++
Допустим у меня есть какой-нибудь while(1) и мне нужно, чтобы при нажатии, например, esc или enter цикл завершался, как такое сделать? ...

Выход из бесконечного цикла по нажатию кнопки. - C++
Привет всем. как можно выйти из такого цикла по нажатию какой любой кнопки (например Esc) int main(){ while(1){ ...

Выход по нажатию клавиши из терминала (Linux(UNIX) - C++
Уважаемые программисты, возникла проблема. Есть клиент, в нем 2 потока. Нужно организовать выход из программы по нажатию комбинации клавиш...


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

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

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