为了账号安全,请及时绑定邮箱和手机立即绑定

请大神看看,为什么程序运行结果和计算器计算结果不一样?

求2/1+3/2+5/3+8/5+13/8=?

public class HelloWorld {

  public static void main(String[] args) {

double sum = 0.0;

double fz = 2.0;

double fm = 1.0;

for(int i = 0; i <= 5; i ++){

sum += (fz / fm);

fm = fz;

fz += fm;

}

System.out.println("sum:"+sum);

  }

}



正在回答

3 回答

double sum = 0.0;
		double fz = 2.0;
		double fm = 1.0;
		double t = 0.0;
		for(int i = 0; i <= 4; i ++){
		sum += (fz / fm);
		t=fm;
		fm = fz;
		fz += t;
		
		
		}
		System.out.println("sum:"+sum);


1 回复 有任何疑惑可以回复我~
#1

慕圣4527065 提问者

非常感谢!
2017-04-12 回复 有任何疑惑可以回复我~
#2

慕圣4527065 提问者

我也不清楚这个积分是干嘛的
2017-04-12 回复 有任何疑惑可以回复我~

public class HelloWorld {

两个值交换,需要用一个中间值进行转化一下。

public static void main(String[] args) {

double sum = 0.0;

double fz = 2.0;

double fm = 1.0;

double t=0.0;

for (int i = 0; i <5; i++) {

sum += (fz / fm);

t=fz;

fz += fm;

fm = t;

}

System.out.println("sum:" + sum);

}


1 回复 有任何疑惑可以回复我~
#1

慕圣4527065 提问者

谢谢你!
2017-04-12 回复 有任何疑惑可以回复我~

i=0时 fz = 2.0 fm = 1.0  sum = 2.0   当i = 1时, fm = fz = 2  fz+=fm(fz = fz+ fm = 2+2=4)  此时sum = 2.0 按你代码以此类推 当然不一样 

1 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消

请大神看看,为什么程序运行结果和计算器计算结果不一样?

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信