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

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

Войти
Регистрация
Восстановить пароль
 
Adina
14 / 14 / 1
Регистрация: 06.04.2012
Сообщений: 287
#1

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

02.07.2012, 08:04. Просмотров 1092. Ответов 2
Метки нет (Все метки)

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
#include <iostream>;
#include <conio.h>;
 
using namespace std;
 
void main()
{
    setlocale(LC_ALL, "Rus");
    calculate();
    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: 
        break;
    }
    
    cout << "Результат вычисления значений: " << _a << _operator << _b << "=" << _result;
}
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
02.07.2012, 08:04
Я подобрал для вас темы с готовыми решениями и ответами на вопрос Как правильно вызвать метод в С++ и как использовать команду goto в default (C++):

О том, почему нелюбим goto; как его правильно использовать; и чем в моем случае его можно заменить? - C++
Вот есть такой оператор всеми программистами нелюбимый. Goto называется. Говорят, что его использование всегда можно обойти и...

как правильно реализовать операцию с goto и в чём моя ошибка??? - C++
Доброе время суток!!!! Не могли бы мне объяснить, как правильно реализовать операцию с goto и в чём моя ошибка??? Задача: вычислить...

Как правильно вызвать функцию? - C++
Добрый день. подскажите как исправить ошибку: TAsync * Async ; Async = new TAsync; ComPort-&gt;...

Как правильно вызвать функцию? - C++
Здравствуйте,посдкажите как правильно объявить функцию в private и вызвать ее в классе. Перепишите текст в сообщение. П. 5.18 и 5.19...

Как правильно использовать классы? Как вывести значение класса на экран? - C++
Всех приветствую. Делаю задание по книге. По заданию нужно завести класс, в котором хранится информация о книгах: число выданных на руки...

как объявить правильно tr и как его использовать при вызове функции? - C++
main.cpp case 8: cout &lt;&lt; &quot;Firs trapec # is: &quot;; cin &gt;&gt; k; k = k - 1; cout &lt;&lt; &quot;Second trapec # is: &quot;; cin &gt;&gt; j;...

2
Schizorb
510 / 462 / 16
Регистрация: 07.04.2012
Сообщений: 869
Записей в блоге: 1
Завершенные тесты: 1
02.07.2012, 08:08 #2
Функция должна быть объявлена до её использования. И ещё, по стандарту main должен возвращать int. Вопрос про 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
#include <iostream>
#include <conio.h> 
// точки с запятой не нужны!
 
using namespace std;
 
void calculate(); // прототип ф-ции
 
int main()
{
    setlocale(LC_ALL, "Rus");
    calculate();   
    getch();
    
    return 0;
}
 
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: 
        break;
    }
    
    cout << "Результат вычисления значений: " << _a << _operator << _b << "=" << _result;
}
0
Adina
14 / 14 / 1
Регистрация: 06.04.2012
Сообщений: 287
02.07.2012, 09:07  [ТС] #3
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
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
02.07.2012, 09:07
Привет! Вот еще темы с ответами:

Как правильно вызвать пользовательскую ф-цию - C++
Выдает ошибку, связанную с передачей массива, как аргумента ф-ции. #include &lt;cstdlib&gt; #include &lt;iostream&gt; #include &lt;cmath&gt; using...

Как правильно вызвать эту функцию? - C++
int sum(int a, int b) { return a + b; } Варианты ответов: 1. sum ( int 7, int 8 ); 2. int sum(int a = 7, int b = 8); ...

Как вызвать метод класса? - C++
User.cpp User::User(string name): name(name), price(0), amount(0) { cout &lt;&lt;&quot;User has been create&quot;; } ...

Как вызвать из метода метод? - C++
Здравствуйте. Прошу Вас помочь. Как мне вызвать из метода Set метод Draw? Мне надо передать объект A в Draw (у которого есть координаты x и...


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

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

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