170 похожих чатов

Ребята, почему double calc() возвращает nan? class calculator{ public: calculator() {

cout << "Start programm " << endl; };

private:
int x;
int y;
char oper;

public:
char oper_;
int x_, y_;
char getOper() {
oper == oper_;
return oper_;
}
int getXY()
{
x = x_;
y = y_;
return x_;
return y_;
}

double calc(int x_, int y_, char oper_) {
switch (oper)
{
case '-':
return x - y;
break;
case '+':
return x + y;
break;
case '*':
return x * y;
break;
case '/':
return x / y;
break;
case '%':
return x % y;
break;
}
}
~calculator() { cout << "Stop programm " << endl; }
};

int main() {
int x, y;
char oper;
cin >> x >> y >> oper;

calculator calc;

cout << calc.calc(x, y, oper) << endl;;
return 0;

}

3 ответов

10 просмотров

в функции calc() ты указываешь параметры x_, y_, oper_, а в кейсах(case) используешь x, y, oper; поэтому свитч не отрабатывает. А так как нет возвращающего оператора у функции (not control paths return a value), то ты получаешь непонятное значение. Еще у тебя в getOper() сравнение oper == oper_, вместо = присваивания и в getXY два return-а - все, что ниже первого уже не отработает.

Kostiantyn- Автор вопроса
the Same⬇ Same
в функции calc() ты указываешь параметры x_, y_, o...

Подправил код вот так, а все равно не отрабатывает #include <iostream> using namespace std; class calculator{ public: calculator() { cout << "Start programm " << endl; }; private: double x; double y; char oper; public: char getOper() { this-> oper == oper; return oper; } double getX() { return x; } double getY() { return y; } double calc(double x, double y, char oper) { switch (oper) { case '-': return x - y; break; case '+': return x + y; break; case '*': return x * y; break; case '/': return x / y; break; } } ~calculator() { cout << "Stop programm " << endl; } }; int main() { double x, y; char oper; cin >> x >> y >> oper; calculator calc; cout << calc.calc(x, y, oper) << endl;; return 0; }

Похожие вопросы

Обсуждают сегодня

коллеги, добрый вечер! А никто не знает как модальная форма может себя закрыть? Ну допустим модальная форма определила, что смысла ей работать нет и хочет вернуть modalResult...
Михаил
83
А если изначально бот работал так : есть сайт онлайн школы. У каждого ученика свой кабинет. Где он авторизуется по своим данным. И уже в кабинете, на самом сайте делает оплату...
Денис 💡 Фрилансер
13
А что ты вообще делаешь ?
Yesgoter
13
средствами IBX как-то можно выполнить запрос insert ... returning?
Igor
31
На работе пишем распределенное приложение, у которого сотни, если не тысячи настроек. Конфиги написаны на xml, расположены на разных хостах и должны быть согласованы друг с др...
Aleksandr Druzhinin
5
Добрый день Хочу начать обучение языку, не являюсь представителем it, буду благодарна за помощь, совсем пока не понимаю ничего) Подскажите, пожалуйста, где можно начать первы...
Sara Lala
18
Всем привет 🙂 Какая-то непонятная проблема у меня с видео, раньше такого не было. Загружаю видео с гугл диска именно в видео mp4 и меняю ссылку как положено вот она: https://d...
Ксюша|Верстка на Тильде|Дизайн 🦥
6
Hi there everyone Is there anyone who have not started hamster bot yet? I need only one, I'll be glad if you do this for me DM if you haven't yet
Mehrshad
53
А какие у этого try практические плюсы перед eval?
Oleg Volkov
41
А как старый хаскел с новым стыковать ? потому как тут работает https://play.haskell.org/saved/C3xpMzcd, а вот тут https://stepik.org/lesson/7602/step/9?unit=1473 нет ошибка C...
Fedor
131
Карта сайта