21xrx.com
2025-06-07 04:08:49 Saturday
文章检索 我的文章 写文章
如何在C++中输入复数
2023-07-08 17:09:16 深夜i     25     0
C++ 复数 输入

在C++中,复数也可以被定义和操作。要输入一个复数,您需要定义一个类来保存复数,然后重载运算符来进行操作。

下面是一个定义复数类的示例代码:

class Complex
{
private:
  double real, imag;
public:
  Complex(double r = 0, double i = 0): real(r), imag(i) {}
  
  // 重载运算符
  Complex operator + (const Complex& c) const
  {
    Complex result;
    result.real = real + c.real;
    result.imag = imag + c.imag;
    return result;
  }
  
  Complex operator - (const Complex& c) const
  
    Complex result;
    result.real = real - c.real;
    result.imag = imag - c.imag;
    return result;
  
  
  Complex operator * (const Complex& c) const
  {
    Complex result;
    result.real = real * c.real - imag * c.imag;
    result.imag = real * c.imag + imag * c.real;
    return result;
  }
  
  Complex operator / (const Complex& c) const
  {
    Complex result;
    double denominator = c.real * c.real + c.imag * c.imag;
    result.real = (real * c.real + imag * c.imag) / denominator;
    result.imag = (imag * c.real - real * c.imag) / denominator;
    return result;
  }
  
  // 输出复数
  friend ostream& operator << (ostream& os, const Complex& c)
  {
    os << c.real << "+" << c.imag << "i";
    return os;
  }
  
  // 输入复数
  friend istream& operator >> (istream& is, Complex& c)
  
    is >> c.real >> c.imag;
    return is;
  
};

在上面的代码中,我们定义了一个名为Complex的类来表示复数。它有两个私有成员变量:real和imag,分别表示实部和虚部。我们重载了加、减、乘、除和输出运算符,以便可以对复数进行各种操作。我们还定义了一个友元输入运算符,以便从用户输入中读取和赋值给复数对象。

现在,您可以像下面这样使用这个类来输入一个复数:

Complex c1;
cout << "请输入一个复数:" << endl;
cin >> c1;
cout << "您输入的复数为:" << c1 << endl;

在上面的代码中,我们首先创建了一个Complex对象c1,然后通过cin输入一个复数,最后输出这个复数对象。注意,我们在输出运算符中使用了一个友元函数来输出复数,因为私有成员变量real和imag不是公共的。

总而言之,在C++中输入复数很简单,您只需要定义一个类来表示复数,并重载输入运算符以读取复数。这使得在程序中处理复数更加容易。

  
  

评论区