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

Как выйти из программы

09.04.2013, 18:06. Показов 6673. Ответов 12
Метки нет (Все метки)

Кликните здесь для просмотра всего текста
Написав щось подібне калькулятору.
Але що написати щоб вийти з консолі??
буду вдячний.
І ще наприклад для повернення в голову програми? що для того потрібно?? на асемблері просто JMP))


Написал что-то подобное калькулятору.
Но что написать чтобы выйти из консоли?
буду благодарен.
И еще например для возвращения в голову программы? что для этого нужно? на ассемблере просто JMP))

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
#include <iostream>
using namespace std;
#define f float
int main()
{
    f a,b,c, r;
    char h;
    setlocale(0,"Ukrainian");
    cout<<"ВВердіть число №1\n";
    cin>>a;
    cout<<"Введіть операцію :+:-:*:/:\n";
    cout<< "якщо сінус(s); косинус(с); до квадрату(k); степінь(z); корінь(x) \n";
    cin>>h;
    switch (h)
    {
        case 's':
                c=sin(a);
                cout<<"Синус введеного числа = "<<c<<endl;
              break;
         
              case 'c':
                c=cos(a);
                cout<<"Косинус введеного числа = "<<c<<endl;
              break;
 
              case 'k':
                c=a*a;
                cout<<" ПІдняте число до квадрату "<<a<<";  Дорівнює "<<c<<endl;
              break;
 
              case 'z':
                cout<<"Введіть степінь\n";
                cin>>b;
                c=pow(a,b);
                cout<<"Введене число "<<a<<";  Піднято у степінь "<<b<<";  І дорівнює "<<c<<endl;
              break;
 
              case 'x':
                c=sqrt(a);
                cout<<"Корінь квадратний з числа "<<a<<";  Дорівнює "<<c<<endl;
              break;
    case '+':
        cout<<"Введіть число №2\n";
        cin>>b;
        c=a+b;
        cout<<"Резутьтат: "<<c<<endl;
 
    break;
    case '-':
        cout<<"Введіть число №2\n";
        cin>>b;
        c=a-b;
        cout<<"Резутьтат: "<<c<<endl;
    break;
    case '*':
        cout<<"Введіть число №2\n";
        cin>>b;
         c=a*b;
        cout<<"Резутьтат: "<<c<<endl;
        
    break;
    case '/':
        cout<<"Введіть число №2\n";
        cin>>b;
        if(b==0)
        {
            cout<<"Ділення на 0 заборонено!"<<endl;
        }
        else
        {c=a/b;
        cout<<"Резутьтат: "<<c<<endl;
        }
    break;
    default:
        cout<<"Невірне значення!!! ";
    break;
    }
    cout<<"Бажаєте вийти з програми? Натисніть 1"<<endl;
    cin>>r;
    if(c==1) 
        exit(0);
    else
    system ("pause");
    return 0;
}
 Комментарий администратора 
Официальный язык форума - русский
__________________
Помощь в написании контрольных, курсовых и дипломных работ, диссертаций здесь
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
09.04.2013, 18:06
Ответы с готовыми решениями:

как выйти из программы
при выполнении программы - выполняется выбранная операция, после чего при нажатии любой кнопки цикл...

Как досрочно выйти из программы
Всем привет. Как досрочно выйти из программы: int main() { int b; setlocale(0,&quot;&quot;);...

как полностью выйти из программы?
есть программа, в которой цикл. необходимо, чтобы при определенном значении строки программа...

Не получается выйти из программы
Всю голову сломала ! Почему while (str != NULL) не реагирует на (str != NULL) и не терминирует -...

12
544 / 93 / 49
Регистрация: 16.12.2011
Сообщений: 317
09.04.2013, 18:09 2
Лучший ответ Сообщение было отмечено как решение

Решение

return для выхода, в голову goto в c
1
164 / 120 / 46
Регистрация: 17.03.2013
Сообщений: 284
09.04.2013, 18:10 3
goto c

Не по теме:

нельзя использовать goto.

1
6 / 6 / 0
Регистрация: 08.04.2013
Сообщений: 111
09.04.2013, 18:12  [ТС] 4
А я роздзява.!!! Замісь "r" написав провірку на "c")))
Може хтось підказати як стрибнути в голову програми??

Добавлено через 1 минуту
окей) В смисле? так и написать goto c?
0
544 / 93 / 49
Регистрация: 16.12.2011
Сообщений: 317
09.04.2013, 18:16 5
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
#include<iostream>
using namespace std;
int main ()    
{
begin:
    cout << "ridna ukraina" << endl;
    int a = 0;
    cout << "vvedite ne nulj-perehod v nachalo 0 vihod" << endl;
    cin >> a;
    if(a)
        goto begin;
    else
        return 0;
  system("pause");
  return 0;
}
0
164 / 120 / 46
Регистрация: 17.03.2013
Сообщений: 284
09.04.2013, 18:34 6
Цитата Сообщение от MCKLAS Посмотреть сообщение
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
#include<iostream>
using namespace std;
int main ()    
{
begin:
    cout << "ridna ukraina" << endl;
    int a = 0;
    cout << "vvedite ne nulj-perehod v nachalo 0 vihod" << endl;
    cin >> a;
    if(a)
        goto begin;
    else
        return 0;
  system("pause");
  return 0;
}
и зачем вы даёте такие советы?
0
544 / 93 / 49
Регистрация: 16.12.2011
Сообщений: 317
09.04.2013, 18:39 7
Цитата Сообщение от GetVariable Посмотреть сообщение
и зачем вы даёте такие советы?
Вы про смешивание c и с++? Или про то что этот оператор сильно запутывает код?
0
164 / 120 / 46
Регистрация: 17.03.2013
Сообщений: 284
09.04.2013, 18:43 8
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
#include <iostream>
 
int main()    
{
    char answer;
 
    do
    {
        std::cout << "Hello." << std::endl;
 
        std::cout << "Enter Y or N: " << std::endl;
 
        std::cin >> answer;
    }
    while(toupper(answer) == 'Y');
 
    return 0;
}
Добавлено через 1 минуту
Цитата Сообщение от MCKLAS Посмотреть сообщение
Вы про смешивание c и с++? Или про то что этот оператор сильно запутывает код?

Не по теме:

этот оператор не только запутывает код, он ещё показывает насколько автор знает правила хорошего кода.

0
544 / 93 / 49
Регистрация: 16.12.2011
Сообщений: 317
09.04.2013, 18:48 9
Цитата Сообщение от GetVariable Посмотреть сообщение
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
#include <iostream>
 
int main()    
{
    char answer;
 
    do
    {
        std::cout << "Hello." << std::endl;
 
        std::cout << "Enter Y or N: " << std::endl;
 
        std::cin >> answer;
    }
    while(toupper(answer) == 'Y');
 
    return 0;
}
Добавлено через 1 минуту


Не по теме:

этот оператор не только запутывает код, он ещё показывает насколько автор знает правила хорошего кода.

В некоторых случаях гораздо целесообразнее использовать goto, и если бы он был не нужен в Си Керниган и Ритчи бы не добавляли этот оператор в спецификацию языка Си.В данном случае я привел пример как один из вариантов решения поставленного вопроса.)
Ссылка 1
0
Заблокирован
09.04.2013, 19:03 10
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
#include <iostream>
using namespace std;
#define f float
int main()
{
f a,b,c, r;
char h;
setlocale(0,"Ukrainian");
cout<<"ВВердіть число №1\n"; //да ты и на украинском-то не особо :gmad:
cin>>a;
cout<<"Введіть операцію :+:-:*:/:\n";
cout<< "якщо сінус(s); косинус(с); до квадрату(k); степінь(z); корінь(x) \n";
cout<<"Бажаєте вийти з програми? Натисніть 1"<<endl;
cin>>h;
for(;;)
{switch (h)
{
case 's':
     c=sin(a);
     cout<<"Синус введеного числа = "<<c<<endl;
     break;
 
case 'c':
     c=cos(a);
     cout<<"Косинус введеного числа = "<<c<<endl;
     break;
 
case 'k':
     c=a*a;
     cout<<" ПІдняте число до квадрату "<<a<<"; Дорівнює "<<c<<endl;
     break;
 
case 'z':
     cout<<"Введіть степінь\n";
     cin>>b;
     c=pow(a,b);
     cout<<"Введене число "<<a<<"; Піднято у степінь "<<b<<"; І дорівнює "<<c<<endl;
     break;
 
case 'x':
     c=sqrt(a);
     cout<<"Корінь квадратний з числа "<<a<<"; Дорівнює "<<c<<endl;
     break;
 
case '+':
     cout<<"Введіть число №2\n";
     cin>>b;
     c=a+b;
    cout<<"Резутьтат: "<<c<<endl;
     break;
 
case '-':
     cout<<"Введіть число №2\n";
     cin>>b;
     c=a-b;
     cout<<"Резутьтат: "<<c<<endl;
     break;
case '*':
     cout<<"Введіть число №2\n";
     cin>>b;
     c=a*b;
     cout<<"Резутьтат: "<<c<<endl;
     break;
case '/':
     cout<<"Введіть число №2\n";
     cin>>b;
if(b==0)
{
cout<<"Ділення на 0 заборонено!"<<endl;
}
else
{c=a/b;
cout<<"Резутьтат: "<<c<<endl;
}
     break;
 
case 1: 
     cin.get();
     return 0;
 
default:
     cout<<"Невірне значення!!! ";
     break;
}
}
 
}
0
164 / 120 / 46
Регистрация: 17.03.2013
Сообщений: 284
09.04.2013, 19:09 11
Цитата Сообщение от MCKLAS Посмотреть сообщение
В некоторых случаях гораздо целесообразнее использовать goto, и если бы он был не нужен в Си Керниган и Ритчи бы не добавляли этот оператор в спецификацию языка Си.В данном случае я привел пример как один из вариантов решения поставленного вопроса.)
Ссылка 1

Не по теме:

в данном случае goto не нужен. как мне говорили умные люди, любую задачу можно решить без goto.

0
4202 / 1794 / 211
Регистрация: 24.11.2009
Сообщений: 27,562
09.04.2013, 19:27 12
Цитата Сообщение от MCKLAS Посмотреть сообщение
В некоторых случаях гораздо целесообразнее использовать goto, и если бы он был не нужен в Си Керниган и Ритчи бы не добавляли этот оператор в спецификацию языка Си.В данном случае я привел пример как один из вариантов решения поставленного вопроса.)
Goto следует применять тогда и только тогда, когда любая алтернатива, которую можешь придумать, усложняет исходный текст. При равной сложности предпочитать альтернативу, тем более при меньшей.

Добавлено через 7 минут
Например, если в конце тела цикла надо выбирать между возвратом в начало, в середину и выходом из цикла, то попытка избавиться от goto ведёт к двойной проверке каждого условия, что есть усложнение по сравнению с двумя ифами и двумя goto.

Добавлено через 3 минуты
Но если всё тело можно можно свети к вводу и множественному ветвлению с брейком в одной ветви, то goto и в этом случае становится избыточным, так как в этом случае сложность не растёт.
1
6 / 6 / 0
Регистрация: 08.04.2013
Сообщений: 111
13.04.2013, 11:37  [ТС] 13
Ну смотря чем компилить. спасибо с goto расчехлил. Ну не знаю пока у меня вот что получилось.
но нада вин-апи будет учить.
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
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
#include <iostream>
using namespace std;
#define f float
int main()
{
    f a,b,c ;
    int r;
    //char r;
    char h;
    setlocale(0,"Ukrainian");
i:  cout<<"ВВердіть число №1\n";
    cout<<endl;
    cin>>a;
    cout<<endl;
    cout<<"Введіть просту операцію :+: :-: :*: :/:\n";
    cout<<"Операція сінус(s); косинус(с); до квадрату(k); степінь(z); корінь(x) \n";
    cout<<"тангенс(t); котангенс(y); логарифм(l); експонента(e); корінь вказаного степеня(o) \n";
    cout<<endl;
    cin>>h;
    cout<<endl;
    switch (h)
    {
              case 's':
                c=sin(a);
                cout<<"Синус введеного числа = "<<c<<endl;
              break;
         
              case 'c':
                c=cos(a);
                cout<<"Косинус введеного числа = "<<c<<endl;
              break;
 
              case 't':
                c=tan(a);
                cout<<"Тангенс введеного числа = "<<c<<endl;
              break;
 
              case 'y':
                c=1/tan(a);
                cout<<"Котангенс введеного числа = "<<c<<endl;
              break;
 
              case 'e':
                c=exp(a);
                cout<<"Експонента числа = "<<c<<endl;
              break;
 
              case 'l':
                  cout<<"Логарифм за основою "<<a<<endl;
                  cout<<"Введіть число №2\n";
                  cin>>b;
                  c=log10(b)/log10(a);
                cout<<"Логарифм за основою "<<a<<"; Числа "<<b<<"; Дорівнює "<<c<<endl;
              break;
 
               case 'o':
                  cout<<"Введіть степінь\n";
                  cin>>b;
                  c=pow(a,1/b);
                cout<<"Корінь "<<b<<" Степеня;  Числа "<<a<<"; Дорівнює"<<c<<endl;
              break;
              
              case 'k':
                c=a*a;
                cout<<" ПІдняте число до квадрату "<<a<<";  Дорівнює "<<c<<endl;
              break;
 
              case 'z':
                cout<<"Введіть степінь\n";
                cin>>b;
                c=pow(a,b);
                cout<<"Введене число "<<a<<";  Піднято у степінь "<<b<<";  І дорівнює "<<c<<endl;
              break;
 
              case 'x':
                c=sqrt(a);
                cout<<"Корінь квадратний з числа "<<a<<";  Дорівнює "<<c<<endl;
              break;
    case '+':
        cout<<"Введіть число №2\n";
        cin>>b;
        c=a+b;
        cout<<"Резутьтат: "<<c<<endl;
 
    break;
    case '-':
        cout<<"Введіть число №2\n";
        cin>>b;
        c=a-b;
        cout<<"Резутьтат: "<<c<<endl;
    break;
    case '*':
        cout<<"Введіть число №2\n";
        cin>>b;
         c=a*b;
        cout<<"Резутьтат: "<<c<<endl;
        
    break;
    case '/':
        cout<<"Введіть число №2\n";
        cin>>b;
        if(b==0)
        {
            cout<<"Ділення на 0 заборонено!"<<endl;
        }
        else
        {c=a/b;
        cout<<"Резутьтат: "<<c<<endl;
        }
    break;
    default:
        cout<<"Невірне значення!!! ";
    break;
    }
p:  cout<<endl;
    cout<<"Бажаєте вийти з програми? Натисніть 1"<<endl;
    cout<<"Очистити екран та повторити операцію? Натисніть 2"<<endl;
    cin>>r;
    /*if(r==1)
        exit(0);
    else
        goto i;*/
    switch (r)
    { case 1:   
        exit(0);
        break;
     case 2:
     system("cls");
    goto i;
     default:
         cout<<"Помилка вводу, посторіть спробу"<<endl;
         goto p;
     }
    system ("pause");
    return 0;
}
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
13.04.2013, 11:37
Помогаю со студенческими работами здесь

Выйти указателем за пределы памяти программы
Создаю я переменные int x = 0; int* xpp; затем ну можно по нажатию можно циклом буду выводить...

Выйти из программы, нажав сочетание клавиш Ctrl+Z
Программа состоит из бесконечного цикла ввода и вывода строки, необходимо выйти из программы...

Как выйти из ДОС-программы?
Например, запустил я прогу, а выйти прилично уже никак. Пробовал: Esc F3 F10 X Q Ctrl+X...

Как выйти из зависшей программы
как выйти из зависшей программы


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

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

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