nafar_2konkor
Registered User
- تاریخ عضویت
- 31 آگوست 2007
- نوشتهها
- 95
- لایکها
- 1
سلام .اگه کسی میتونه لطفا اشکال این برنامه رو تا فردا رفع کنه . این برنامه برای نوشتن چند جمله ای و جمع دو چند جمله ای با همه. در این کلاس یه اشاره گر برای توان و یکی برای ضریبه وmaxdegree هم بیشترین درجه هر
چند جمله ایه . ساختار کلی برنامم میخوام همین باشه .فقط لطفا اشکالشو بگید (اینو برای این گفتم چون میدونم همین برنامه رو با یه سرچ توی گوگل میتونم پیدا کنم ولی من میخوام اشکال همین برنامه رو رفع کنم)
چند جمله ایه . ساختار کلی برنامم میخوام همین باشه .فقط لطفا اشکالشو بگید (اینو برای این گفتم چون میدونم همین برنامه رو با یه سرچ توی گوگل میتونم پیدا کنم ولی من میخوام اشکال همین برنامه رو رفع کنم)
کد:
#include <iostream.h>
class poly{
friend ostream& operator<<(ostream &,poly);
friend istream& operator>>(istream &,poly);
public:
poly(int=0);
poly &operator+(poly);
private:
float *zarib;
int *tavan;
int maxdegree;
};
poly::poly(int d)
{maxdegree=d;
tavan=new int[maxdegree];
zarib=new float[maxdegree];
}
istream &operator>>(istream &input,poly p)
{for(int i=0;i<maxdegree;i++)
{cout<<"enter"<<i<<"omin zarib";
input>>p.zarib[i];
cout<<"enter"<<i<<"omin tavan";
input>>p.tavan[i];
}
}
ostream &operator<<(ostream &output,poly p)
{for(int i=0;i<maxdegree-1;i++)
{if(p.zarib[i]!=0)
output<<p.zarib[i]<<"x"<<p.tavan<<"+";
}
if(p.zarib[i]!=0)
output<<p.zarib[i]<<"x"<<p.tavan;
}
poly &poly::operator+(poly p)
{
maxdegree=(maxdegree>p.maxdegree ?maxdegree:p.maxdegree);
poly d(maxdegree);
d.tavan=new int [maxdegree+1];
d.zarib=new float[maxdegree+1];
for(int i=0;i<maxdegree;i++)
{
d.tavan[i]=tavan[i];
d.zarib[i]=zarib[i]+p.zarib[i];
}
}
void main()
{poly a(3);
cin>>a;
poly b(4);
cin>>b;
cout<<a+b;
}