OOP OPERATOR FUNCTION OVERALOADING cphanso

#pragma once #include<iostream> #include<fstream> using namespace std; class phanSo { private: int tuso,mauso; public: phanSo();// khởi tạo mặc định phanSo(int ,int );// khởi tạo tham số phanSo(const phanSo &); // Nhập phân số friend istream& operator>>(istream&,phanSo & ); friend ostream& operator<<(ostream& ,phanSo); // cộng trừ nhân chia nhé cách bạn // Phép gán bằng nhé các bạn phanSo& operator =(const phanSo &); // Qua phần cộng trừ nhân chia nhé cac bạn phanSo operator +(phanSo ); phanSo operator -(phanSo ); phanSo operator *(phanSo ); phanSo operator /(phanSo ); // phân số +int phanSo operator +(int ); phanSo operator -(int ); phanSo operator *(int ); phanSo operator /(int ); // int +phan số friend phanSo operator +(int ,phanSo); friend phanSo operator -(int ,phanSo); friend phanSo operator *(int ,phanSo); friend phanSo operator /(int ,phanSo); // +=,-=,*=,/= bạn nhé // phan số +=,*=,/=,-= phan so phanSo& operator+=(const phanSo &); phanSo& operator-=(const phanSo &); phanSo& operator*=(const phanSo &); phanSo& operator/=(const phanSo &); // phân số +=,-=,*=,/= int phanSo& operator+=(int); phanSo& operator-=(int); phanSo& operator*=(int); phanSo& operator/=(int); // so sanh nhe cac bạn bool operator>(phanSo); bool operator<(phanSo); bool operator>=(phanSo); bool operator<=(phanSo); bool operator==(phanSo); bool operator!=(phanSo); // qua toán tử cộng nhe các bạn phanSo operator++(); phanSo operator++(int); ~phanSo(void); // }; // file .cpp nhe các bạn #include "phanSo.h" phanSo::phanSo() { tuso=0; mauso=1; } // khởi tạo có tham số phanSo::phanSo(int a,int b) { tuso=a; mauso=b; } // sao chép phanSo::phanSo(const phanSo &a) { tuso=a.tuso; mauso=a.mauso; } // nhập istream& operator >>(istream &is,phanSo &a) { is>>a.tuso; is>>a.mauso; return is; } // xuất ostream& operator <<(ostream &os,phanSo a) { os<<a.tuso<<"/"<<a.mauso; return os; } // phép gán = phanSo& phanSo::operator=(const phanSo &a) { this->tuso =a.tuso; this->mauso=a.mauso; return *this; } // cộng trừ nhân chia nhé các bạn thân yêu của tui // cộng phan số với 1 phân số phanSo phanSo::operator +(phanSo a) { phanSo ps(tuso*a.mauso+mauso*a.tuso,mauso*a.mauso); return ps; } phanSo phanSo::operator*(phanSo a) { phanSo ps(tuso*a.tuso,mauso*a.mauso); return ps; } phanSo phanSo::operator-(phanSo a) { phanSo ps(tuso*a.mauso-mauso*a.tuso,mauso*a.mauso); return ps; } phanSo phanSo::operator/(phanSo a) { phanSo nghichdao(a.mauso,a.tuso); return this->operator*(nghichdao); } // cộng phân số với 1 số nguyên ban nhé phanSo phanSo::operator+(int x) { phanSo a(x,1); return this->operator+(a); } phanSo phanSo::operator-(int x) { phanSo a(x,1); return this->operator-(a); } phanSo phanSo::operator*(int x) { phanSo a(x,1); return this->operator*(a); } phanSo phanSo::operator/(int x) { phanSo a(x,1); return this->operator/(a); } // cộng trừ nhân chia 1 số nguyên với 1 phân số ban nhé phanSo operator+(int a,phanSo ps) { phanSo x(a,1); return ps+x; } phanSo operator -(int x,phanSo ps) { phanSo a(x,1); return (-1)*(ps+a); } phanSo operator*(int x,phanSo ps) { phanSo a(x,1); return ps*a; } phanSo operator/(int x,phanSo ps) { phanSo a(x,1); return a/ps; } // phan số +=,*=,/=,-= phân số phanSo& phanSo::operator +=(const phanSo &ps) { *this=*this+ps; return *this; } phanSo& phanSo::operator -=(const phanSo &ps) { *this=*this-ps; return *this; } phanSo& phanSo::operator *=(const phanSo &ps) { *this=*this*ps; return *this; } phanSo& phanSo::operator /=(const phanSo &ps) { *this=*this/ps; return *this; } // phân số +=,-=,*=,/= int phanSo& phanSo::operator+=(int x) { phanSo a(x,1); *this=*this+a; return *this; } phanSo& phanSo::operator-=(int x) { phanSo a(x,1); *this=*this-a; return *this; } phanSo& phanSo::operator*=(int x) { phanSo a(x,1); *this=*this*a; return *this; } phanSo& phanSo::operator/=(int x) { phanSo a(x,1); *this=*this/a; return *this; } // so sánh nhé các bạn bool phanSo::operator>(phanSo a) { return mauso>a.mauso; } bool phanSo::operator<(phanSo a) { return mauso<a.mauso; } bool phanSo::operator>=(phanSo a) { return mauso>=a.mauso; } bool phanSo::operator<=(phanSo a) { return mauso<=a.mauso; } bool phanSo::operator==(phanSo a) { return mauso==a.mauso; } bool phanSo::operator!=(phanSo a) { return mauso!=a.mauso; } // ++a,a++; phanSo phanSo::operator++() { *this=*this+1; return *this; } phanSo phanSo::operator++(int x) { phanSo tem=*this; *this=*this+1; return tem; } //hàm hủy nhé phanSo::~phanSo(void) { } // hàm main #include"phanSo.h" int main() { phanSo a(1,2); phanSo b(3,4); b=a++; //++a; cout<<b; cout<<a; tương tự các hạ làm típ nhé đúi .... system("pause"); return 0; }

Be the first to comment

You can use [html][/html], [css][/css], [php][/php] and more to embed the code. Urls are automatically hyperlinked. Line breaks and paragraphs are automatically generated.