开始 定义变量 确定循环次数k=(log(b-a)-log(r))*1.0/log(2) c=(a+b)/2 i=0 N i 源程序代码: #include double f(double x,double a,double b,double c,double d) { double y; y=a*x*x*x+b*x*x+c*x+d; return y; } int main() { double x1,x2,f1,f2,z,a,b,c,d,k; cout<<\从高到低输入方程的系数\ cin>>a>>b>>c>>d; cout<<\输入隔根区间的端点x1,x2:\ cin>>x1>>x2; f1=f(x1,a,b,c,d); f2=f(x2,a,b,c,d); cout<<\输入精度:\ cin>>k; if (f1*f2>0) cout<<\隔根区间内没有根或不止一个根\ else { while (fabs(x1-x2)>=k) { if(f(x1,a,b,c,d)*f((x1+x2)/2,a,b,c,d)>0) x1=(x1+x2)/2; else x2=(x1+x2)/2; } } z=(x1+x2)/2; cout<<\方程的根为\ return 0; } 程序执行结果(拷屏): 源程序文件名: 第二天第一题.cpp 4.用迭代法解线性方程组(参考答案:x1=1,x2=2,x3=1) 11x1 -3x2 -2x3 =3 -23x1 +11x2+x3 =0 x1 -2x2 +2x3=-1 程序编制要点(知识点、程序框图): 开始 定义变量 x11=3.0/11+3.0/11*x2+2.0/11*x3; x21=23.0/11*x1-1.0/11*x3; x31=-0.5*x1+x2-0.5; fabs(x11-x1)>10e-10||fabs(x21-x2)>10e-10||fabs(x31-x3)>10N 输出结果 结束 源程序代码: #include int main() { double x[3]={1,1,1},y,m=1; int i; for (;m>=0.0000001;) { y=x[0]; x[0]=(3+3*x[1]+2*x[2])/11; Y x[1]=(0+23*x[0]-x[2])/11; x[2]=(-1-x[0]+2*x[1])/2; if ((y-x[0])>0) m=y-x[0]; else m=x[0]-y; } for (i=0;i<3;i++) { cout << \ } return 0; } 程序执行结果(拷屏): 源程序文件名: 第二天第二题.cpp 5.输入某年某月某日,指出这一天是这一年的第几天。 程序编制要点(知识点、程序框图):
西北工业大学动力与能源学院上机实习报告(3)
2019-03-29 14:44
西北工业大学动力与能源学院上机实习报告(3).doc
将本文的Word文档下载到电脑
下载失败或者文档不完整,请联系客服人员解决!