- 25
- 0
- 约4.5千字
- 约 20页
- 2017-01-27 发布于重庆
- 举报
西安交大计算方法
西安交通大学
计算方法上机实验
班级:(xxx)
姓名:(xxx)
学号:2111601004
1.按两种顺序计算y,哪个接近真值?
Y = 1000 + + + … +
用java 语言编写:
public class Add {
public static void main(String[] args)
{
double s=0,y=1000;
for(double a=1001.0;a=2000.0;a++)
{
y+=1.0/a;
}
for(double a=2000.0;a=1001.0;a--)
{
s+=1.0/a;
}
s=s+1000;
System.out.println(正序和+s);
System.out.println(逆序和+y);
}
}
运行结果:
结论:显然假设是double类型的数据时,先算大数的过程吃掉了末尾的小数被进位所埋没,导致了大数吃小数的误差,按从小到大(从右向左)的计算顺序所得的结果与真值相近,而按从大到小(从左到右)的计算顺序所得的结果与真值的误差较大。
1-18.设(x) = 1 + x + + + … + , 计算(-5)和1/(5),哪个接近 ?
解
原创力文档

文档评论(0)