وبلاگ تخصصی کامپیوتر

آموزش برنامه نویسی

وبلاگ تخصصی کامپیوتر

آموزش برنامه نویسی

سیستم های شی گرا

 

 پروژه درس سیستم های شی گرا

 

کلاسی بنام چند جمله ای طراحی کنید. نمایش داخلی یک چند جمله ای آرایه ای از جملات آن چند جمله ای است هر جمله از ضریب و توان تشکیل شده است این کلاس بایستی دارای:

  1. توابع سازنده
  2. نابود کننده 
  3. توابع خواندن و نوشتن
  4. سربارگذاری اپراتورهای +, -, =, *, =+, =-, =*, ,  []

 

جلسه اول: 

  

کلاسی برای چند جمله ای ایجاد کنید نمایش داخلی کلاس چند جمله ای (polynominal) آرایه ای از جملات است هر چند جمله حاوی یک ضریب و یک توان است به عنوان مثال جمله 2*4 دارای ضریب 2 و توان 4 است. 

  

#include<iostream>

using namespace std; 

const int p=50;

class jomle{

            friend class polynomial;

            friend ostream &operator<<(ostream &,polynomial &);

            friend istream &operator>>(istream &,polynomial &);

            friend polynomial operator-(polynomial a,polynomial b);

            friend polynomial operator+(polynomial a,polynomial b);

            friend polynomial operator*(polynomial a,polynomial b);

            friend polynomial operator*=(polynomial &a,polynomial b);

            friend polynomial operator+=(polynomial &a,polynomial b);

            friend polynomial operator-=(polynomial &a,polynomial b);

            friend polynomial operator++(polynomial &a,int);

            friend polynomial operator++(polynomial &a);

public:

            virtual void delta(polynomial &poly){cout<<"virtual"<<endl;}

            jomle(int z=0,int t=0):zarib(z),tavan(t){}

            ~jomle(){cout<<"destructor"<<endl;}

private:

          int zarib;

          int tavan;

};

class polynomial:public jomle{

             friend ostream &operator<<(ostream &,polynomial &);

             friend istream &operator>>(istream &,polynomial &);

             friend polynomial operator-(polynomial a,polynomial b);

             friend polynomial operator+(polynomial a,polynomial b);

             friend polynomial operator*(polynomial a,polynomial b);

             friend polynomial operator*=(polynomial &a,polynomial b);

             friend polynomial operator+=(polynomial &a,polynomial b);

             friend polynomial operator-=(polynomial &a,polynomial b);

             friend polynomial operator++(polynomial &a,int);

             friend polynomial operator++(polynomial &a);

public:

             polynomial polynomial::operator[](int i){

                    polynomial temp;

                         temp.array[0].tavan=array[i].tavan;

                         temp.array[0].zarib=array[i].zarib;

                   return temp;

             }

private:

           int arraysize;

           jomle array[p];

   };