• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            posts - 183,  comments - 10,  trackbacks - 0

            + - * / += -= *= /= >> <<

              1 #include <iostream>
              2 using namespace std;
              3 
              4 class Complex
              5 {
              6 private:
              7     double real;
              8     double image;
              9 public:
             10     Complex(double r = 0.0double i = 0.0) : real(r), image(i) {}
             11     Complex(const Complex& c)
             12     {
             13         real = c.real;
             14         image = c.image;
             15     }
             16     ~Complex() {}
             17     Complex& operator=(const Complex& c)
             18     {
             19         if (this != &c)
             20         {
             21             real = c.real;
             22             image = c.image;
             23         }
             24         return *this;
             25     }
             26     Complex& operator+=(const Complex& c)
             27     {
             28         real += c.real;
             29         image += c.image;
             30         return *this;
             31     }
             32     Complex& operator-=(const Complex& c)
             33     {
             34         real -= c.real;
             35         image -= c.image;
             36         return *this;
             37     }
             38     Complex& operator*=(const Complex& c)
             39     {
             40         double r2 = real, i2 = image;
             41         real = r2 * c.real - i2 * c.image;
             42         image = r2 * c.image + i2 * c.real;
             43         return *this;
             44     }
             45     Complex& operator/=(const Complex& c)
             46     {
             47         double r2 = real, i2 = image;
             48         real = (r2 * c.real + i2 * c.image) / (c.real * c.real + c.image * c.image);
             49         image = (i2 * c.real - r2 * c.image) / (c.real * c.real + c.image * c.image);
             50         return *this;
             51     }
             52     friend Complex operator+(const Complex& c1, const Complex& c2);
             53     friend Complex operator-(const Complex& c1, const Complex& c2);
             54     friend Complex operator*(const Complex& c1, const Complex& c2);
             55     friend Complex operator/(const Complex& c1, const Complex& c2);
             56     friend istream& operator>>(istream& in, Complex& c);
             57     friend ostream& operator<<(ostream& outconst Complex& c);
             58 };
             59 
             60 Complex operator+(const Complex& c1, const Complex& c2)
             61 {
             62     Complex t(c1);
             63     return t += c2;
             64 }
             65 
             66 Complex operator-(const Complex& c1, const Complex& c2)
             67 {
             68     Complex t(c1);
             69     return t -= c2;
             70 }
             71 
             72 Complex operator*(const Complex& c1, const Complex& c2)
             73 {
             74     Complex t(c1);
             75     return t *= c2;
             76 }
             77 
             78 Complex operator/(const Complex& c1, const Complex& c2)
             79 {
             80     Complex t(c1);
             81     return t /= c2;
             82 }
             83 
             84 istream& operator>>(istream& in, Complex& c)
             85 {
             86     in >> c.real >> c.image;
             87     if (!in)
             88     {
             89         cerr << "Input error!" << endl;
             90         exit(1);
             91     }
             92     return in;
             93 }
             94 
             95 ostream& operator<<(ostream& outconst Complex& c)
             96 {
             97     out << c.real << '+' << c.image << 'i';
             98     return out;
             99 }
            100 
            101 int main()
            102 {
            103     Complex c1(1.02.0), c2(3.04.0);
            104     cout << c1 << endl;
            105     cout << c2 << endl;
            106     cout << c1 + c2 << endl;
            107     cout << c1 - c2 << endl;
            108     cout << c1 * c2 << endl;
            109     cout << c1 / c2 << endl;
            110 
            111     Complex c3(5.06.0), c4(7.08.0);
            112     c1 += c2 += c3 += c4;
            113     cout << c1 << endl;
            114     cout << c2 << endl;
            115     cout << c3 << endl;
            116     cout << c4 << endl;
            117     return 0;
            118 }
            posted on 2011-04-21 23:46 unixfy 閱讀(194) 評論(0)  編輯 收藏 引用

            只有注冊用戶登錄后才能發(fā)表評論。
            網(wǎng)站導(dǎo)航: 博客園   IT新聞   BlogJava   博問   Chat2DB   管理


            久久99国产精品99久久| 精品人妻伦九区久久AAA片69 | 一本色道久久88加勒比—综合| 久久国产精品99精品国产987| 久久青草国产手机看片福利盒子| 久久播电影网| 久久亚洲欧美国产精品| 久久久不卡国产精品一区二区| AV无码久久久久不卡蜜桃| www.久久热| 亚洲女久久久噜噜噜熟女| 国产精品嫩草影院久久| 久久棈精品久久久久久噜噜| 精品熟女少妇aⅴ免费久久| 欧美亚洲色综久久精品国产| 欧美性大战久久久久久| 日本道色综合久久影院| 狠狠色综合网站久久久久久久高清| 国产日产久久高清欧美一区| 久久亚洲精品国产亚洲老地址| 久久被窝电影亚洲爽爽爽| 国产精品乱码久久久久久软件| 99久久免费国产精品| 少妇内射兰兰久久| 久久精品综合网| 久久综合伊人77777麻豆| 久久青青草原精品影院| 97久久超碰国产精品旧版| 亚洲中文字幕无码久久2020| 欧美精品丝袜久久久中文字幕 | 婷婷伊人久久大香线蕉AV| 日日狠狠久久偷偷色综合免费| 久久夜色tv网站| 久久伊人精品青青草原高清| 91精品国产综合久久精品| 久久亚洲精品成人av无码网站| 久久精品无码一区二区WWW| 中文字幕久久亚洲一区| 狠狠色丁香久久婷婷综合图片| 久久影视国产亚洲| 伊人久久大香线蕉AV色婷婷色|