0

Написал код для решения задачи, но он выдает ошибку. Подскажите в чем проблема.

https://code.sololearn.com/c2PNKCrWcklP/?ref=app Вот задача:Вы создаете программу для управления банковскими счетами Данный код объявляет класс Account с членами balance и interest. Банк просит вас добавить новый функционал, объединив два счета вместе, в результате чего появится новый с суммой балансов и процентов оригинальных. Перегрузите оператор + для сложения двух объектов Account и добавления балансов и процентов. А вот код который надо изменить: #include <iostream> using namespace std; class Account { private: int balance=0; int interest=0; public: Account() {} Account(int a): balance(a) { interest += balance/10; } int getTotal() { return balance+interest; } //введите код сюда }; int main() { int n1, n2; cin >> n1 >> n2; Account a(n1); Account b(n2); Account res = a+b; cout << res.getTotal(); } Ввод данных 1000, 8500. Вывод 10450

4th Jan 2021, 10:04 PM
Михаил Михаил
Михаил Михаил - avatar
3 Antworten
0
Вы пытаетесь приравнять метод класса к значению типа int (21-я строка): res.getTotal()=this->getTotal()+i.getTotal(); Значение счёта задаётся в конструкторе класса, следовательно, его нужно задавать при объявлении класса. Вот исправленный вариант метода с перегрузкой: Account operator+(Account i) { Account res(this->getTotal()+i.getTotal()); return res; }
5th Jan 2021, 8:40 PM
Nikolay Burmistrov
Nikolay Burmistrov - avatar
0
Спасибо огромное)
6th Jan 2021, 1:42 PM
Михаил Михаил
Михаил Михаил - avatar
0
Не получается нужный вывод. В чем ошибка? #include <iostream> using namespace std; class Account { private: int balance=0; int interest=0; public: Account() {} Account(int a): balance(a) { interest += balance/10; } int getTotal() { return balance+interest; } //ваш код идет здесь Account operator+(Account &obj){ Account res = this->getTotal()+obj.getTotal(); return res; } }; int main() { int n1, n2; cin >> n1 >> n2; Account a(n1); Account b(n2); Account res = a+b; cout << res.getTotal(); }
13th Jun 2024, 7:16 PM
Сергей Дунин
Сергей Дунин - avatar