请使用VC6或使用【答题】菜单打开考生文件夹pros3下的工程prog3,其中包含了类P0lynomial(“多项式”)的定义。 形如5x4+3.4x2一7x+2的代数式称为多项式,其中的5为4次项系数,3.4为2次项系数,一7为1次项系数,2为0次

admin2017-07-04  14

问题 请使用VC6或使用【答题】菜单打开考生文件夹pros3下的工程prog3,其中包含了类P0lynomial(“多项式”)的定义。
   形如5x4+3.4x2一7x+2的代数式称为多项式,其中的5为4次项系数,3.4为2次项系数,一7为1次项系数,2为0次项(常数项)系数。此例缺3次项,意味着3次项系数为0,即省略了0x3。在Polynomial中,多项式的各个系数存储在一个名为coef的数组中。例如,对于上面的多项式,保存在coef[0]、coef[1]…coef[4]中的系数依次为:2.0、一7.0、3.4、0.0,5.0,也即对于i次项,其系数就保存在coef中。成员函数getValue计算多项式的值,多项式中x的值是由参数指定的。
    请补充完成文件Polynomial.cpp中成员函数getValue的定义。此程序的正确输出结果应为:
    Value of pl when x=2.0:59.8
    Value of p2 when x=3.0:226.8
   注意:只在函数getValue的“//**********333**********”和“//**********666**********”之间填入若干语句,不要改动程序中的其他内容。
//Polynomiac.h
#include
using namespace std;
class,Polynomial{  //“多项式”类
public:
  Polynomial(double coef[],int
num):coef(new double[num]),num of
terms(num){
    for(int i=0;i    this一>coef=coef
    }
    一Polynomial(){delete[]coef;}
    //返回指定次数项的系数
    double getCoefficient(int power)
const{return coef[power];}
  //返回在X等于指定值时多项式的值
  double getValue(double x)const;
private:
//系数数组,coef[0]为0次项(常数项)系数,coef[1]为1次项系数,coef[2]为2次项(平方项)系数,余类推。
  double*cogf;
  int hum_of_terms;
  };
  void writeToFile(const char*path);
  //Polymomial.cpp
  #include”Polynomial.h”
  double Polynomial::getValue(double
  X)const{
    //多项式的值value为各次项的累加和
  double value=coef[0];
    //********333********
    //********666********
    return value;
  }
  //main.cpp
  #include”Polynomial.h”
  int main(){
  double pl[]=:{5.0,3.4,-4.0,8.0),
p2[]={0.0,一5.4,0.0,3.0,2.0);
  Polynomial polyl(pl,sizeof(p1)/
sizeof(double)),poly2(p2,sizeof
(p2)/sizeof(double));
  cout<<”Value of pl when X=2.0:”
<  cout<<”Value of p2 when X=3.0:”
<    writeToFile(””);
  return 0;
  }

选项

答案for(int i=1;i0) //当j大于零时,做相乘操作,即完成该项的乘方动作 { x_value*=x; j--; } value+=coef[i]=*X value; //把i项的乘方结果乘以该项系数后加进value中 }

解析 题目要求成员函数getVahe计算多项式的值,多项式中x的值由参数指定,多项式的值value为各次项的累加和。由类的定义可知数组coef中存储的是各次项的系数,这里使用for循环来完成题目要求,当次项为0时,value=coef[0]。当次项为1时,value=coef[1]* x+coef[0]。依次类推直到X的最高次数。
转载请注明原文地址:https://kaotiyun.com/show/VLAp777K
0

随机试题
最新回复(0)