2. Xây dựng lớp số phức mô tả các đối tượng số phức lớp gồm: * Các thành phần thuộc tính: - a,b là các số nguyên mô tả phần thực và phần ảo của số phức. * các phương thức: - Phương thức nhập theo số phức - Phương thức hiển thị số phức (a + ib) Viết chương trình nhập vào một mảng gồm n số phức. Tính và hiển thị ra màn hình tổng các số phức đã nhập bằng các phương pháp nhau: - Sử dụng phương thức. - Sử dụng hàm tự do. - Sử dụng hàm bạn. - Sử dụng hàm toán tử. Trả lời: Phần mềm sử dụng: Visual Studo Sử dụng phương thức: CODE: Select All #include <iostream>using namespace std;class sp{private: double a; double b;public: void nhapsl() { cout << "\n nhap phan thuc :"; cin >> a; cout << " nhap phan ao :"; cin >> b; } void insl() { cout << "\n phan thuc la :" << a; cout << "\n phan ao la :" << b << "\n"; } sp cong(sp u2) { sp u; u.a = a + u2.a; u.b = this->b + u2.b; return u; } sp() { a= 0; b= 0; }};void main(){ sp ucong, a[100]; int n; cout << "nhap so luong phan so: "; cin >> n; for (int i = 1; i <= n;i++) { cout << "\n nhap so phuc thu " << i; a[i].nhapsl(); } for (int i = 1; i <= n; ++i) { ucong = ucong.cong(a[i]); } ucong.insl(); system("pause");} - Sử dụng hàm tự do. CODE: Select All #include <iostream>using namespace std;class sp{public: double a; double b; void nhapsl() { cout << "\n nhap phan thuc :"; cin >> a; cout << " nhap phan ao :"; cin >> b; } void insl() { cout << "\n phan thuc la :" << a; cout << "\n phan ao la :" << b << "\n"; } sp() { a = 0; b = 0; }}; sp cong(sp u1, sp u2) { sp u; u.a = u1.a + u2.a; u.b = u1.b + u2.b; return u; }void main(){ sp ucong, a[100]; int n; cout << "nhap so luong phan so: "; cin >> n; for (int i = 1; i <= n;i++) { cout << "\n nhap so phuc thu " << i; a[i].nhapsl(); } for (int i = 1; i <= n; ++i) { ucong = cong(ucong, a[i]); } ucong.insl(); system("pause");} - Sử dụng hàm bạn (Friend) CODE: Select All #include <iostream>using namespace std;class sp{private:public: double a; double b; void nhapsl() { cout << "\n nhap phan thuc :"; cin >> a; cout << " nhap phan ao :"; cin >> b; } void insl() { cout << "\n phan thuc la :" << a; cout << "\n phan ao la :" << b << "\n"; } sp() { a = 0; b = 0; }friend sp cong(sp u1, sp u2){ sp u; u.a = u1.a + u2.a; u.b = u1.b + u2.b; return u;}};void main(){ sp ucong, a[100]; int n; cout << "nhap so luong phan so: "; cin >> n; for (int i = 1; i <= n; i++) { cout << "\n nhap so phuc thu " << i; a[i].nhapsl(); } for (int i = 1; i <= n; ++i) { ucong = cong(ucong, a[i]); } ucong.insl(); system("pause");} Sử dụng toán tử operator + CODE: Select All #include <iostream>using namespace std;class sp{public: double a; double b; void nhapsl() { cout << "\n nhap phan thuc :"; cin >> a; cout << " nhap phan ao :"; cin >> b; } void insl() { cout << "\n phan thuc la :" << a; cout << "\n phan ao la :" << b << "\n"; } sp() { a = 0; b = 0; }};sp operator +(sp u1, sp u2){ sp u; u.a = u1.a + u2.a; u.b = u1.b + u2.b; return u;}void main(){ sp ucong, a[100]; int n; cout << "nhap so luong phan so: "; cin >> n; for (int i = 1; i <= n; i++) { cout << "\n nhap so phuc thu " << i; a[i].nhapsl(); } for (int i = 1; i <= n; ++i) { ucong = ucong + a[i]; } ucong.insl(); system("pause");} Chúc các bạn học tập tốt.