对于给定的正整数N,需要你计算 S=1!+2!+3!+...+N!。
输入格式:
输入在一行中给出一个不超过10的正整数N。
输出格式:
在一行中输出S的值。
输入样例:
3
输出样例:
9
作者: 陈越
单位: 浙江大学
时间限制: 400 ms
内存限制: 64 MB
代码长度限制: 16 KB
1 import java.io.BufferedReader; 2 import java.io.IOException; 3 import java.io.InputStreamReader; 4 public class Main { 5 public static void main(String[] args) throws IOException { 6 BufferedReader input=new BufferedReader(new InputStreamReader(System.in)); 7 String n=input.readLine(); 8 int rn=Integer.parseInt(n); 9 int sum=0,a=1,k=1; 10 while(a<=rn){ 11 sum+=k; 12 a++; 13 k=a*k;//一开始写的k*(k+1)是不对的,而且当时a++在这一行的后面。a和k是有关系的,但是两者的作用不一样。 14 } 15 System.out.print(sum); 16 } 17 }
重点是while内部。到底最少几个变量比较合适,变量与变量之间的逻辑关系要理清。