JAVA 阶乘 的倒数求和public class Jiecheng {public static void main(

1个回答

  • 1

    你的程序有很多的错误

    给你程序做了一下更改

    一个文件里只能有一个class,你的那个class Jiecheng

    {

    int show(int i)

    {

    if(i==1)

    return 1;

    else

    return i*show(i-1);

    }

    应该是个方法,不应该这么写,另外while(fct>1e4)

    {

    fct*=n;

    n+=1

    }

    也不知道你要干什么,就给你注释了,代码如下

    public class Jiecheng {

    public static void main(String args[]) {

    int n = 5,fct = 1;

    // while (fct > 1e4) {

    // fct *= n;

    // n += 1;

    // }

    Jiecheng aa = new Jiecheng();

    float a,sum = 0;

    int i = 0;

    for (i = 1; i < n + 1; i++) {

    a = aa.show(i);

    sum = sum + 1 / a;

    }

    System.out.println("e=" + sum);

    }

    public int show(int i) {

    if (i == 1) {

    return 1;

    } else {

    return i * show(i - 1);

    }

    }

    }

    结果如下

    e=1.7166666