首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
请使用VC6或使用【答题】菜单打开考生文件夹prog3下的工程prog3,其中包含了类Polynomial(“多项式”)的定义。 形如5χ4+3.4χ2-7χ+2的代数式称为多项式,其中的5为4次项系数,3.4为2次项系数,-7为1次项系数,2为0
请使用VC6或使用【答题】菜单打开考生文件夹prog3下的工程prog3,其中包含了类Polynomial(“多项式”)的定义。 形如5χ4+3.4χ2-7χ+2的代数式称为多项式,其中的5为4次项系数,3.4为2次项系数,-7为1次项系数,2为0
admin
2017-02-21
55
问题
请使用VC6或使用【答题】菜单打开考生文件夹prog3下的工程prog3,其中包含了类Polynomial(“多项式”)的定义。
形如5χ
4
+3.4χ
2
-7χ+2的代数式称为多项式,其中的5为4次项系数,3.4为2次项系数,-7为1次项系数,2为0次项(常数项)系数。此例缺3次项,意味着3次项系数为0,即省略了0χ
3
。在Polynomial中,多项式的各个系数存储在一个名为coef的数组中。例如,对于上面的多项式,保存在coef[0]、coef[1]…coef[4]中的系数依次为:2.0、-7.0、3.4、0.0、5.0,也即对于i次项,其系数就保存在coef
中。成员函数getValue计算多项式的值,多项式中χ的值是由参数指定的。
请补充完成文件Polynomial.cpp中成员函数getValue的定义。此程序的正确输出结果应为:
Value of p1 when x=2.0:59.8
Value of p2 when x=3.0:226.8
注意:只在函数getVahe的“********333********”和“********666********”之间填入若干语句,不要改动程序中的其他内容。
//Polynomiac.h
#include<iostream>
using namespace std;
class Polynomial{//“多项式”类
public:
Polynomial(double coef[],int num):coef(new double[num]),num of terms(num){
for(int i=0;i<num_of_terms;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 * coef;
int num_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()f
double pl[]={5.0,3.4,-4.0,8.0),p2[]={0.0,-5.4,0.0,3.0,2.0);
Polynomial polyl(p1,sizeof(p1)/sizeof(double)),poly2(p2,sizeof(p2)/sizeof(double));
cout<<"Value of pl when x=2.0:"<<poly1.getValue(2.0)<<end1;
cout<<"Value of p2 when x=3.0:"<<poly2.getValue(3.0)<<end1;
writeToFile("");
return 0;
}
选项
答案
for(int i=1;i<num_of_terms;i++) //从i=1开始遍历数组coef的所有项 { int j=i-1; //把i-1赋值给j,保证从零次方开始 double x_value=X; //把x赋给x_value while(j>0) //当j大于零时,做相乘操作,即完成该项的乘方动作 { x_value * =x; j--; } value +=coef[i]*x_value; //把i项的乘方结果乘以该项系数后加进value中 }
解析
题目要求成员函数getValue计算多项式的值,多项式中X的值由参数指定,多项式的值value为各次项的累加和。由类的定义可知数组coef中存储的是各次项的系数,这里使用for循环来完成题目要求,当次项为0时,value=coef[0]。当次项为1时,value=coef[1] *cx+coef[0]。依次类推直到x的最高次数。
转载请注明原文地址:https://kaotiyun.com/show/QBAp777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
在下面四个选项中,()是用来声明虚函数的。
下列对基类和派生类关系的描述中,错误的是()。
下列for语句的循环次数为【】。for(inta=0,b=1;b&&a<5;a++);
C++中封装性、继承性和【】是面向对象思想的主要特征。
对于下面的程序ifstreamfin(c:\test.txt);if(fin)cout<<"ok";elsecout<<"wrong";对于if语句中的内容可
对于模板定义关键字class和typename说法不正确的是
下列运算符中全都可以被友元函数重载的是
软件工程的出现是由于
将x+y*z中的“+”用成员函数重载,“*”用友元函数重载应写为【】。
当要使用ostrstream流类定义一个流对象并联系一个字符串时,应在文件开始处使用#include命令,使之包含()文件。
随机试题
某单位总承包了某机场的场道工程任务,该项目基础为两层水泥稳定碎石,要求7d浸水无侧限抗压强度不少于3.5MPa。在某段底基层施工完毕后监理单位进行检查,发现用钢钎下探基础松散,监理工程师怀疑强度达不到设计要求。施工单位提交的抗压强度表明,强度达到了设计要求
A.第3腰椎B.足侧倾斜15°,耻骨联合上3cmC.头侧倾斜20°~25°,两髂前上棘连线中点D.两髂前上棘连线中点下方3cmE.髂前上棘与脐连线中点腰椎侧位中心线为
A、微晶纤维素B、碳酸氢钠C、硬脂酸镁D、乙基纤维素E、滑石粉可用于粉末直接压片的是()
防排烟系统的排烟口距可燃物或可燃构件的距离不应小于()。
账务处理系统初始余额录入后,系统提示数据错误时,应当()。
()是员工招聘中常用的一种方法,但也存在较多争议。
在编辑演示文稿的文本标题时,可改变标题级别的视网是()。
某兴趣小组探究植物细胞失水量与外界溶液浓度的关系,选用紫色洋葱鳞片叶外表皮作为实验材料,进行以下实验:①撕取洋葱鳞片叶外表皮,分别在0.2g/mL、0.3g/mL、0.4g/mL的蔗糖溶液中浸泡一段时间。②取出材料,分别制成1、2
A、 B、 C、 D、 A1个圆圈一2个小正方形,图形数量相等,由此可知选择A选项。
加快资本周转,可以()
最新回复
(
0
)