首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
请使用VC6或使用【答题】菜单打开考生文件夹prog3下的工程prog3,其中包含了类Polynomial(“多项式”)的定义。 形如5x4+3.4x2-7x+2的代数式称为多项式,其中的5为4次项系数,3.4为2次项系数,-7为1次项系数,2为0
请使用VC6或使用【答题】菜单打开考生文件夹prog3下的工程prog3,其中包含了类Polynomial(“多项式”)的定义。 形如5x4+3.4x2-7x+2的代数式称为多项式,其中的5为4次项系数,3.4为2次项系数,-7为1次项系数,2为0
admin
2016-08-19
8
问题
请使用VC6或使用【答题】菜单打开考生文件夹prog3下的工程prog3,其中包含了类Polynomial(“多项式”)的定义。
形如5x
4
+3.4x
2
-7x+2的代数式称为多项式,其中的5为4次项系数,3.4为2次项系数,-7为1次项系数,2为0次项(常数项)系数。此例缺3次项,意味着3次项系数为0,即省略了0x
3
。在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 p1 when x=2.0:59.8
Value of p2 when x=3.0:226.8
注意:只在函数getValue的“//********333********”和“//********666********”之间填人若干语句,不要改动程序中的其他内容。
1 //Polynomiac.h
2 #include
3 using namespace std;
4 class Polynomial{ //“多项式”类
5 public:
6 Polynomial(double coef[],int num):coef(new double[num]),num_of_terms(num){
7 for(int i=0;i
8 this->coef
=coef
;
9 }
10 ~Polynomial(){delete[]coef;}
11 //返回指定次数项的系数
12 double getCoefficient(int power)const{return coef[power];)
13 //返回在x等于指定值时多项式的值
14 double getValue(double X)const;
15 private:
16 //系数数组,coef[0]为0次项(常数项)系数,coef[1]为1次项系数,coef[2]为2次项(平方项)系数,余类推。
17 double*coef;
18 int hum 0f terms;
19 };
20
21 void writeToFile(const char*path);
1 //Polymomial.cpp
2 #include"Polynomial.h"
3 double Polynomial::getValue(doublex)const{
4 //多项式的值value为各次项的累加和
5 double value=coef[0];
6 //********333********
7
8 //********666********
9 return value;
10 )
1 //main.cpp
2 #include"Polynomial.h"
3 int main(){
4 double pl[]={5.0,3.4,-4.0,8.0},
p2[]={0.0,-5.4,0.0,3.0,2.0};
5 Polynomial polyl(p1,sizeof(p1)/sizeof(double)),poly2(p2,sizeof(p2)/Sizeof(double));
6 cout<<"Value of p1 when x=2.0:"<
7 cout<<"Value of p2 when x=3.0:"<
8 writeToFile(" ");
9 return 0;
10 }
选项
答案
1 for(int i=1;i
0)//当j大于零时,做相乘操作,即完成该项的乘方动作 6 { 7 x_value*=x; 8 j--; 9 } 10 value+=coef[i]*x value;//把i项的乘方结果乘以该项系数后加进value中 11 }
解析
题目要求成员函数getValue计算多项式的值,多项式中x的值由参数指定,多项式的值value为各次项的累加和。由类的定义可知数组coef中存储的是各次项的系数,这里使用for循环来完成题目要求,当次项为0时,value=coef[0]。当次项为1时,value=coef[1]*x+coef[0]。依次类推直到x的最高次数。
转载请注明原文地址:https://kaotiyun.com/show/p4Np777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
类Contain的定义如下:classContain{private:intx;protected:intz;public:classEmbed{
有以下程序:#include<iostream>usingnamespacestd;classA{private:intx;public:A(inta){
以下程序段有()处错误。#include<iostream>usingnamespacesstd;classSample{private:intn;public:
需求分析最终结果是产生()。
在下面的程序的横线处填上适当的语句,使该程序的输出为12。#include〈iostream〉usingnamespacestd;classBase{public:inta;
已知某序列为{49,38,65,97,76,13,27},试采用该序列的第一个元素为枢轴进行快速排序,则经过一趟快速排序之后所得到的序列为:【】。
函数fun的返回值是fun(char*a,char*b){intnum=0,n=0;while(*(a+num)!=’\0’)nmn++;while(b[n]){*(a+num)=b[n];num
若a=12,b=14,c=0,则表达式“((y=(a>B)?a:B)>C)?y:c”的值为【】。
在进行了任何C++流的操作后,都可以用C++流的有关成员函数检测流的状态,其中用于是否进行了非法操作的函数名是()。
.、.*、->、::、?:这五个运算符______重载。
随机试题
女性,40岁,既往有风湿病史。2年来,经常感觉乏力、心悸。查体:血压100/60mmHg,心前区可闻及舒张期杂音2~3级,双肺底少许湿哕音,肝肿大(肋下3cm),下肢轻度可凹性水肿。符合患者疾病的描述是
关于肝破裂的描述,错误的是
某患者,缺失,原天然牙为正跨关系,可摘局部义齿修复在排牙过程中,下列哪项是正确的
关于手术区术前准备的措施中,哪项是不正确的
设函数f(x)=sin(2x一),x∈R,则f(x)是()。
素质教育就是要学生什么都学,什么都学好。
真理标准问题的讨论是一次深刻的思想解放运动,这里的“解放”是指:
调查表明,一年中任何月份,18到65岁的女性中都有52%在家庭以外工作。因此,18到65岁的女性中有48%是全年不在外工作的家庭主妇。以下哪项如果为真,最严重地削弱了上述论证?
Whichisthebestwordtodescribeairtravellers’reactiontoairlinealliances?Accordingtothepassage,settingupairline
Afindinginrecentyearsshowsthatmencannotmanufacturebloodasefficientlyaswomencan.Thismakessurgeryriskierforme
最新回复
(
0
)