计算方法与实习实验报告c语言
计算方法与实习
实
验
报
告
1
实习题一
N 1
4、设Sn 2 ,已知其精确值为 。
j 2 j 1
1)编制按从大到小的顺序计算S 的程序;
n
2)编制按从小到大的顺序计算S 的程序;
n
3)按两种顺序分别计算S ,S ,S ,并指出有效位数。
1000 10000 30000
实验代码
C 语言程序如下:
#include
#include
using namespace std;
int main(){
float Sn=0;
int N;
cin>>N;
for(float j=2;j<=N;j++){
Sn=1/(j*j-1)+Sn;
}
cout<
Sn=0;
for(j=N;j>=2;j--){
Sn=1/(j*j-1)+Sn;
}
cout<
return 0;
}
运行窗口
2
实习题二
1、用牛顿法求下列方程的根:
1)x 2 ex 0
3
实验代码
C 语言程序代码如下:
#include
#include
#define N 100
#define eps 1e-6
#define eta 1e-8
using namespace std;
float Newton(float f(float),float fl(float),float x0){
float x1,d;
int k=0;
do{
x1=x0-f(x0)/fl(x0);
if(k++>N||fabs(fl(x1))
d=fabs(x1)<1?x1-x0:(x1-x0)/x1;
x0=x1;
cout<
}while(fabs(d)>eps&&fabs(f(x1))>eta);
return x1;
}
float f(float x){
return x+log10(x)-2;
}
float fl(float x){
return 1+1/x;
}
void main(){
float x0,y0;
cin>>x0;
y0=Newton(f,fl,x0);
cout<
}
运行窗口
4