I.Introduction
Trong bài này mình xin chia sẽ cách cài đặt lớp sớ phức theo tư duy hướng đối tượng
II.Coding
Mở VS C++ 6.0 lên vào tạo Win32 Console Application
Tiếp theo chúng ta lần lượt tạo các file(Ctrl + N –> Files):
SoPhuc.h: Chứa Code thông tin lớp số phức gồm các thuộc tính và các hành vi
SoPhuc.cpp: chứa Code xử lý các hành vi của số phức
Main.cpp : thực thi chương trình
Bây giờ chúng ta lần lượt cài đặt trong các file
SoPhuc.h
1: #ifndef _SoPhuc_H
2: #define _SoPhuc_H
3: class SoPhuc
4: {
5: private:
6: double Thuc,Ao;
7: public:
8: void Nhap() ;
9: void Xuat() const ;
10: SoPhuc(double thuc = 0.0, double ao = 0.0);
11: SoPhuc Cong(SoPhuc b) const ;
12: SoPhuc Tru(SoPhuc b) const ;
13: SoPhuc Nhan(SoPhuc b) const;
14: SoPhuc Chia(SoPhuc b) const ;
15: };
16: #endif
SoPhuc.cpp
1: #include <iostream.h>
2: #include "SoPhuc.h"
3: SoPhuc::SoPhuc(double thuc, double ao)
4: {
5: this->Thuc = thuc;
6: this->Ao = ao;
7: }
8: void SoPhuc::Nhap()
9: {
10: cout << "Phan Thuc: " ; cin >> Thuc;
11: cout << "Phan Ao "; cin >> Ao;
12: }
13: void SoPhuc::Xuat() const
14: {
15: cout << "("<< Thuc <<","<< Ao <<")";
16: }
17: SoPhuc SoPhuc::Cong(SoPhuc b) const
18: {
19: return SoPhuc(Thuc+b.Thuc,Ao+b.Ao);
20: }
21: SoPhuc SoPhuc::Tru(SoPhuc b) const
22: {
23: return SoPhuc(Thuc-b.Thuc,Ao-b.Ao);
24: }
25: SoPhuc SoPhuc::Nhan(SoPhuc b) const
26: {
27: return SoPhuc(Thuc*b.Thuc-Ao*b.Ao,Thuc*b.Ao+b.Thuc*Ao);
28: }
29: SoPhuc SoPhuc::Chia(SoPhuc b) const
30: {
31: double index = b.Thuc*b.Thuc + b.Ao*b.Ao;
32: return SoPhuc(Thuc*b.Thuc+Ao*b.Ao/index,
33: (-Thuc*b.Ao)/index);
34: }
Main.cpp
1: #include <iostream.h>
2: #include "SoPhuc.h"
3: int Menu();
4: void Run(int);
5: void main()
6: {
7: int task;
8: while (task=Menu())
9: Run(task);
10: }
11: int Menu()
12: {
13: int n ;
14: cout << "Menu : \n";
15: cout << "1.Cong Hai So Phuc \n";
16: cout << "2.Tru Hai So Phuc \n";
17: cout << "3.Nhan Hai So Phuc \n";
18: cout << "4.Chia Hai So Phuc \n";
19: cout << "0.Thoat \n" ;
20: cout << "Ban chon :" ;
21: cin >> n;
22: return n;
23: }
24: void Run(int task)
25: {
26: SoPhuc A,B,C;
27:
28: switch(task)
29: {
30: case 1:
31: cout << "Nhap So Phuc Thu Nhat \n";
32: A.Nhap();
33: cout << "Nhap So Phuc Thu Hai \n";
34: B.Nhap();
35: C = A.Cong(B);
36: cout << "Ket Qua :";
37: A.Xuat();
38: cout << " + ";
39: B.Xuat() ;
40: cout << " = " ;
41: C.Xuat();
42: cout << "\n--------------------------- \n";
43: break;
44: case 2:
45: cout << "Nhap So Phuc Thu Nhat \n";
46: A.Nhap();
47: cout << "Nhap So Phuc Thu Hai \n";
48: B.Nhap();
49: C = A.Tru(B);
50: cout << "Ket Qua :";
51: A.Xuat();
52: cout << " - ";
53: B.Xuat() ;
54: cout << " = " ;
55: C.Xuat();
56: cout << "\n--------------------------- \n";
57: break;
58: case 3:
59: cout << "Nhap So Phuc Thu Nhat \n";
60: A.Nhap();
61: cout << "Nhap So Phuc Thu Hai \n";
62: B.Nhap();
63: C = A.Nhan(B);
64: cout << "Ket Qua :";
65: A.Xuat();
66: cout << " x ";
67: B.Xuat() ;
68: cout << " = " ;
69: C.Xuat();
70: cout << "\n--------------------------- \n";
71: break;
72: case 4:
73: cout << "Nhap So Phuc Thu Nhat \n";
74: A.Nhap();
75: cout << "Nhap So Phuc Thu Hai \n";
76: B.Nhap();
77: C = A.Chia(B);
78: cout << "Ket Qua :";
79: A.Xuat();
80: cout << " / ";
81: B.Xuat() ;
82: cout << " = " ;
83: C.Xuat();
84: cout << "\n--------------------------- \n";
85: break;
86: default:
87: cout << "Ban Da nhap sai \n" ;
88: break;
89: }
90: }
Chạy chương trình và xem kết quả :
/*Life Run On Code*/
Anh học tới cách sử dụng operator chưa ạ?
LikeLike
chà… em nghĩ là rồi hay chưa ????
LikeLike