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

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


            久久精品夜色噜噜亚洲A∨ | 久久亚洲2019中文字幕| 国产精品免费久久| 少妇被又大又粗又爽毛片久久黑人| 久久青青色综合| 狠狠色丁香婷婷综合久久来| 精品久久久久久国产牛牛app| 日本WV一本一道久久香蕉| 97久久国产亚洲精品超碰热 | 久久久久国色AV免费看图片| 亚洲国产成人精品91久久久| 国产成人精品久久一区二区三区| 久久久久亚洲av成人无码电影| 亚洲AV日韩AV永久无码久久| 久久91这里精品国产2020| 久久久高清免费视频| 精品国产青草久久久久福利| 亚洲AV日韩精品久久久久久久| 久久精品无码免费不卡| 精品蜜臀久久久久99网站| 日本久久中文字幕| 久久99精品久久久久久| 久久无码专区国产精品发布| 久久亚洲国产精品一区二区| 亚洲成色999久久网站| 99国产精品久久| 亚洲av成人无码久久精品 | 久久成人小视频| 无码精品久久一区二区三区| 国产综合免费精品久久久| 国产精品视频久久久| 久久精品无码午夜福利理论片| 亚洲色婷婷综合久久| 精品熟女少妇a∨免费久久| 狠狠色婷婷久久一区二区| 久久国产欧美日韩精品免费| 国内精品久久久久久久coent| 国内精品久久久久久久久电影网| 久久精品国产一区| 韩国三级中文字幕hd久久精品 | 久久综合给合久久国产免费|