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

Как правильно вызвать метод в С++ и как использовать команду goto в default - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Режим ожидания в С++ http://www.cyberforum.ru/cpp-beginners/thread617652.html
Помогите пожалуйста, как сделать режим ожидания ввода пользователя в консольном приложении, чтобы программа сразу не закрывалась. Я до этого программировала на C#: там было так Console.ReadLine();...
C++ Вычислить номер максимального по модулю элемента массива 2)В одномерном массиве, состоящем из n вещественных элементов, вычислить: - номер максимального по модулю элемента массива; - сумму элементов массива, расположенных после первого положительного... http://www.cyberforum.ru/cpp-beginners/thread617635.html
Сборник наиболее используемых операторов C++
Помню в Паскале была очень удобная табличка, описывающая каждое непонятное слово в коде. Есть ли подобная приятная вещь для С++?
Задача с тимуса C++
совсем недавно в программировании встретилась задачка с тимуса 1295 проблема в том что в ней используются очень большие числа. и что делать в таком случае? мой вариант решения этой задачи #include...
C++ Списки смежности графа http://www.cyberforum.ru/cpp-beginners/thread617624.html
доброй ночи хочу до конца в теме этой разобраться, а то как-то не сразу до меня дошло) посмотрите, все ли я верно сделал #include <iostream> struct node { int x; node *next; ...
C++ В какое из колец попадет больше точек даны внешние и внутренние радиусы двух колец, центры которых находятся в начале координат. Даны координаты десяти точек. В какое из колец попадет больше точек подробнее

Показать сообщение отдельно
Adina
14 / 14 / 1
Регистрация: 06.04.2012
Сообщений: 287
02.07.2012, 09:07  [ТС]
Schizorb, обратный возврат мне нужен для того, чтобы , если пользователь введёт такое значение как :> 2 ? 9 , либо 2 & 2, чтобы возвращала обратно метод calculate и не выходила с программы

Добавлено через 16 минут
А вот сделала:
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
#include <iostream>;
#include <conio.h>;
using namespace std;
void calculate();
void main(){
    repeat:
    setlocale(LC_ALL, "Rus");
    calculate();
    goto repeat;
    getch();
}
void calculate(){
    float _a,_b,_result; char _operator;
    cout << "Введите значения для вычисления: [Например: 2 + 2]: ";
    cin >> _a >> _operator >> _b;
    switch(_operator) {
    case '+':
        _result = _a + _b;
        break;
    case '-':
        _result = _a - _b;
        break;
    case '*':
        _result = _a * _b;
        break;
    case '/':
        _result = _a / _b;
        break;
    default:
        cout << "Ошибка ввода оператора. Попробуйте попытку снова";
        break;
    }
    cout << "Результат вычисления значений: " << _a << _operator << _b << "=" << _result << endl << endl;
}
Добавлено через 5 минут
Вот сидела и проверяла программу. И возник еще один вопрос, как проверять исключения в С++ ? Когда я написала 2 & 2 , вот этот код сработал:
C++
1
2
3
    default:
        cout << "Ошибка ввода оператора. Попробуйте попытку снова";
        break;
Но всё равно выходит ошибка и программа закрывается. Как обработать Exception в С++ ?

Добавлено через 13 минут
Никто не знает, как обрабатывать исключения ? ( Exception )

Добавлено через 8 минут
А всё, разобралась. Добавила :
C++
1
return
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
#include <iostream>;
#include <conio.h>;
using namespace std;
void calculate();
void main(){
    repeat:
    setlocale(LC_ALL, "Rus");
    calculate();
    goto repeat;
    getch();
}
void calculate(){
    float _a,_b,_result; char _operator;
    cout << "Введите значения для вычисления: [Например: 2 + 2]: ";
    cin >> _a >> _operator >> _b;
    switch(_operator) {
    case '+':
        _result = _a + _b;
        break;
    case '-':
        _result = _a - _b;
        break;
    case '*':
        _result = _a * _b;
        break;
    case '/':
        _result = _a / _b;
        break;
    default:
        cout << "Ошибка ввода оператора. Попробуйте попытку снова";
        cout << endl << endl;
        return;
        break;
    }
    cout << "Результат вычисления значений: " << _a << _operator << _b << "=" << _result << endl << endl;
}
Добавлено через 5 минут
Снова нашла одну ошибку, как исправить ?

Когда написала в программе типа того: 2 iewwi 7, программа будто попадает в бесконечный цикл goto и повторяется постоянно и вывод в консоли Ошибка ввода оператора. Попробуйте попытку снова с последующим переполнением памяти компьютера. Как исправить эту ошибочку ?
0
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru