public class java9 {
public static void main(String[] args) {

double sum=0;
double feizi=2.0,feimu=1.0;
for(int i=1;i<=2;i++){
sum=sum+feizi/feimu;
feimu=feizi;
feizi=feizi+feimu;


                      }
          System.out.println(sum);
  
        }            }

解决方案 »

  1.   

    double特性导致,计算结果不准确
      

  2.   

    使用Math中的方法,自己写个测试一下
      

  3.   

    public class test
    {
    public static void main(String[] args)
    {
    double sum = 0;
    double z = 2;
    double m = 1; for(int i = 1 ;i <= 2 ; i++)
    {
    sum = sum + z/m;//   sum = 0 + 2/1    sum = 2   for 2(循环第二次):  sum = 2 + 4/2    sum = 4
    m = z; // m = 2 for 2:  m = 4
    z = z + m; // z = 2 + 2   z = 4 for 2:  z = 4 + 4                    z = 8
    }
    System.out.println("sum="+sum); //sum = 4.0
    }
    }
    结果就是4啊,你想得到什么结果?