21xrx.com
2024-11-22 09:48:49 Friday
登录
文章检索 我的文章 写文章
如何在C++中输入复数
2023-07-08 17:09:16 深夜i     --     --
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++中输入复数很简单,您只需要定义一个类来表示复数,并重载输入运算符以读取复数。这使得在程序中处理复数更加容易。

  
  

评论区

{{item['qq_nickname']}}
()
回复
回复