• <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 閱讀(197) 評(píng)論(0)  編輯 收藏 引用

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


            亚洲午夜久久久久久噜噜噜| 久久综合狠狠综合久久激情 | 国产精品久久久久久影院| 无码AV波多野结衣久久| 一本大道久久a久久精品综合| 久久精品国产精品亚洲人人 | 久久久久久久99精品免费观看| 青青青青久久精品国产h| 久久福利资源国产精品999| 亚洲国产精品一区二区久久| 欧美日韩精品久久久免费观看| 好久久免费视频高清| 欧美日韩精品久久久免费观看| 国产巨作麻豆欧美亚洲综合久久| 性高湖久久久久久久久| 久久久网中文字幕| 丁香久久婷婷国产午夜视频| 亚洲精品高清国产一线久久| 三级韩国一区久久二区综合| 99久久99久久久精品齐齐 | 一本久久知道综合久久| 无码国内精品久久人妻麻豆按摩| 久久电影网一区| 久久香蕉超碰97国产精品| 久久热这里只有精品在线观看| 久久婷婷五月综合成人D啪| 精品久久久久久久久久久久久久久| 久久夜色精品国产噜噜噜亚洲AV| 中文字幕精品无码久久久久久3D日动漫 | 伊人热人久久中文字幕| 久久国产精品无码HDAV| 久久精品国产亚洲AV高清热 | 久久男人Av资源网站无码软件| 伊人久久大香线蕉精品不卡| 香港aa三级久久三级老师2021国产三级精品三级在| 国产成人无码久久久精品一| 久久人人妻人人爽人人爽| 国产精品禁18久久久夂久| 亚洲天堂久久精品| 日韩AV毛片精品久久久| 久久久久久久久久久精品尤物 |