java学习笔记

最近蛮忙,忙得我的作业 都还有一大堆没做,特别是java 。作业中有一道题目是求1!+2!+…+100!

由于数字比较小,就直接一个简单的算就 OK了

下面是源代码:

[cce]
import java.util.Scanner;
public class artur_1

{

public static void main(String[] args)

{ int n;

        Scanner sc=new Scanner(System.in);
System.out.println("请输入一个数n:");
n=sc.nextInt();
   System.out.println(getRevers(n));
}

public static double getRevers(int n)
{
             double sum=0;
             double nul=1;
             for(int i=1;i <=n;i++)
             {
              nul=nul*i;
              sum+=nul;
             }
             return sum;
    }
    }
[/cce]
这是一个比较简单的算法,参考了CSDN的jayflee的算法,比较实用,不过此算法还是有缺点,java的int类型的范围是-214748648~2147483647,输入一个2147483647程序就over了(另外本来的源代码是 错误的应该是double类型执行就不会有错误),想要更大的话,曲强 Nicky 的随笔里面有一个算法,还是dialog的,很强大,准备继续学习中,Eclipse 还是不大会用,555,不知道怎么学习Eclipse,不过慢慢来好了,呵呵

发表评论

电子邮件地址不会被公开。 必填项已用*标注