为什么退不出来啊
帮我改一下啊
//Polynomial.h
#ifndef POLYNOMIAL_H
#define POLYNOMIAL_H
#include
using namespace std ;
class Polynomial
{
//friend Polynomial & operator + ()
public:
Polynomial(void):m_degree(0){}
int Degree(void) const ;
void Input(void) ;
void Output(void) const ;
int Value(int x) const ;
Polynomial & operator + (const Polynomial & p) ;
Polynomial & operator = (const Polynomial &p) ;
private:
int m_degree ; //指数
int *m_ceof ; //系数
};
int Polynomial::Degree(void) const
{
return m_degree ;
}
void Polynomial::Input(void)
{
int n ;
cout<<"输入指数:" ;
cin>>n ;
m_degree = n ;
m_ceof = new int[n + 1];
cout<<"请输入系数:"< for(int i=0; i cin>>m_ceof[i];
}
void Polynomial::Output(void) const
{
for(int i= 0; i < m_degree + 1; ++i)
cout< cout<}
int Polynomial::Value(int x) const
{
int ret = 0 ;
for(int n=m_degree ; n>-1; n--)
ret = ret * x + m_ceof[n] ;
return ret;
}
Polynomial &Polynomial:: operator + (const Polynomial & p)
{
int len = m_degree >= p.m_degree ? m_degree : p.m_degree ;
Polynomial p1 ;
p1.m_degree = len ;
p1.m_ceof = new int[len+1] ;
int i = 0 ;
for( ; i p1.m_ceof[i] = m_ceof[i] + p.m_ceof[i] ;
if (i {
for ( ; i p1.m_ceof[i] = m_ceof[i] ;
}
if (i < p.m_degree + 1)
{
for( ; i p1.m_ceof[i] = p.m_ceof[i] ;
}
return p1 ;
}
Polynomial & Polynomial:: operator = (const Polynomial &p)
{
m_degree = p.m_degree ;
m_ceof = new int[m_degree+1] ;
for(int i= 0; i< m_degree ; i++)
m_ceof[i] = p.m_ceof[i] ;
return *this ;
}
#endif
//main.cpp
#include "Polynomial.h"
int main(void)
{
Polynomial p ;
p.Input() ;
p.Output() ;
cout<
Polynomial p1 ;
p1.Input () ;
Polynomial p2 ;
p2 = p + p1 ;
p2.Output () ;
return 0 ;
}
--------------------next---------------------
帮我改一下啊
//Polynomial.h
#ifndef POLYNOMIAL_H
#define POLYNOMIAL_H
#include
using namespace std ;
class Polynomial
{
//friend Polynomial & operator + ()
public:
Polynomial(void):m_degree(0){}
int Degree(void) const ;
void Input(void) ;
void Output(void) const ;
int Value(int x) const ;
Polynomial & operator + (const Polynomial & p) ;
Polynomial & operator = (const Polynomial &p) ;
private:
int m_degree ; //指数
int *m_ceof ; //系数
};
int Polynomial::Degree(void) const
{
return m_degree ;
}
void Polynomial::Input(void)
{
int n ;
cout<<"输入指数:" ;
cin>>n ;
m_degree = n ;
m_ceof = new int[n + 1];
cout<<"请输入系数:"<
}
void Polynomial::Output(void) const
{
for(int i= 0; i < m_degree + 1; ++i)
cout<
int Polynomial::Value(int x) const
{
int ret = 0 ;
for(int n=m_degree ; n>-1; n--)
ret = ret * x + m_ceof[n] ;
return ret;
}
Polynomial &Polynomial:: operator + (const Polynomial & p)
{
int len = m_degree >= p.m_degree ? m_degree : p.m_degree ;
Polynomial p1 ;
p1.m_degree = len ;
p1.m_ceof = new int[len+1] ;
int i = 0 ;
for( ; i
if (i
for ( ; i
}
if (i < p.m_degree + 1)
{
for( ; i
}
return p1 ;
}
Polynomial & Polynomial:: operator = (const Polynomial &p)
{
m_degree = p.m_degree ;
m_ceof = new int[m_degree+1] ;
for(int i= 0; i< m_degree ; i++)
m_ceof[i] = p.m_ceof[i] ;
return *this ;
}
#endif
//main.cpp
#include "Polynomial.h"
int main(void)
{
Polynomial p ;
p.Input() ;
p.Output() ;
cout<
Polynomial p1 ;
p1.Input () ;
Polynomial p2 ;
p2 = p + p1 ;
p2.Output () ;
return 0 ;
}
--------------------next---------------------