4-1 复数类的运算符重载
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 4-1 復(fù)數(shù)類的運(yùn)算符重載
Time Limit:?1000MS Memory Limit:?65536KB Submit StatisticProblem Description
通過(guò)本題目的練習(xí)可以掌握成員運(yùn)算符重載及友元運(yùn)算符重載
要求定義一個(gè)復(fù)數(shù)類,重載加法和減法運(yùn)算符以適應(yīng)對(duì)復(fù)數(shù)運(yùn)算的要求,重載插入運(yùn)算符(<<)以方便輸出一個(gè)復(fù)數(shù)的要求。
Input
要求在主函數(shù)中創(chuàng)建對(duì)象時(shí)初始化對(duì)象的值。
Output
輸出數(shù)據(jù)共有4行,分別代表a,b的值和它們求和、求差后的值
Example Input
無(wú)Example Output
a=3.2+4.5i b=8.9+5.6i a+b=12.1+10.1i a-b=-5.7-1.1i#include <iostream>
using namespace std;
class Complex
{
double real;
double imag;
public:
Complex(double r=0,double i=0):real(r),imag(i){};
void Display();
Complex operator +(Complex &);
Complex operator -(Complex &);
friend ostream& operator <<(ostream &,Complex &);
};
ostream & operator <<(ostream & OUT,Complex &C)
{
OUT<<C.real;
if(C.imag<0)
OUT<<C.imag<<"i"<<endl;
else if(C.imag>0)
OUT<<"+"<<C.imag<<"i"<<endl;
else
OUT<<"0i"<<endl;
return OUT;
}
Complex Complex::operator +(Complex &C)
{
return Complex(real+C.real,imag+C.imag);
}
Complex Complex::operator -(Complex &C)
{
return Complex(real-C.real,imag-C.imag);
}
int main()
{
Complex a(3.2,4.5),b(8.9,5.6),c,d;
cout<<"a=";
cout<<a;
cout<<"b=";
cout<<b;
c=a+b;
cout<<"a+b=";
cout<<c;
d=a-b;
cout<<"a-b=";
cout<<d;
return 0;
}
轉(zhuǎn)載于:https://www.cnblogs.com/CCCrunner/p/6444589.html
總結(jié)
以上是生活随笔為你收集整理的4-1 复数类的运算符重载的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: iOS Xcode8的适配
- 下一篇: 淘宝——移动端页面终端适配