У меня есть код, который должен спросить пользователя два набора реальных и мнимых чисел.Сложение и вычитание сложных чисел с использованием класса в C++
#include <iostream>
using namespace std;
class Complex {
public:
double r;
double i;
public:
Complex();
void add(Complex, Complex);
void subtract(Complex, Complex);
void print();
};
Complex::Complex() {
r = i = 0;
}
void Complex::add (Complex op1, Complex op2) {
r = op1.r+op2.r;
i = op1.i+op2.i;
}
void Complex::subtract (Complex op1, Complex op2) {
r = op1.r-op2.r;
i = op1.i-op2.i;
}
void Complex::print() {
cout << r << i;
}
int main() {
Complex operand1, operand2, result;
cout << "Input real part for operand one: " << endl;
cin >> operand1.r;
cout << "Input imaginary part for operand one: " << endl;
cin >> operand1.i;
cout << "Input real part for operand two: " << endl;
cin >> operand2.r;
cout << "Input imaginary part for operand two: " << endl;
cin >> operand2.i;
result.add(operand1, operand2);
cout << "The sum is " << result.add << endl;
result.subtract(operand1, operand2);
cout << "The difference is " << result.subtract << endl;
}
Однако, когда я составил программу, много ошибок отображаются (станд :: basic_ostream), который я даже не получаю.
Еще одна проблема, которая возникает у меня в функции void :: Комплексная печать. Внутри cout должно быть условие. Нет, если-еще. Но я понятия не имею, что делать.
Программа должны работать так:
Input вещественной части для операнда одного: 5
ввода мнимой части для операнда одного: 2 (я для мнимые не должен быть написано)
Input действительной части для операнда два: 8
Входной мнимая часть для операнда два: 1 (опять же, я не должен быть введен)
/, то он будет печатать ввод (ред) числа/
(5, 2i) // на этот раз с I
(8, 1i)
/затем ответы/
Сумма составляет 13 + 3i.
Разница -3, 1i. // или -3, i
Пожалуйста, помогите! Я новичок в C++ и здесь, в stackoverflow, и ваша помощь будет очень оценена. Большое спасибо!
Это ваша домашняя домашняя работа? – penartur
Прочтите дополнительную информацию о перегрузке оператора, и вы сможете правильно писать свои функции добавления и вычитания. – Alexander
Да, penartur. Я думаю, что сделал все, что мог, но моих знаний все еще не хватает. Мне нужно руководство. –