求用JAVA书写满足1!+2!+3!+…n!<9999的最大整数n.要求显示n及多项式的值

求用JAVA书写满足1!+2!+3!+…n!<9999的最大整数n.要求显示n及多项式的值

第1个回答  2008-10-13
public class Test {

public static void main(String[] args)
{
int value=1;
for (int i= 1; i<=10; i++) {
value+=findn(i);
System.out.println("n值为:"+i+" value值为:"+value);//可注掉,调试时看值。
if(value>9999){
System.out.println("最大n值为:"+(i-1)+" 最大value值为:"+(value-findn(i)));
break;
}
}

}
static long findn(int n)
{
if (n == 1)return 1;
else return n * findn(n - 1);
}

}
n为7 value为5914本回答被提问者采纳
第2个回答  2008-10-13
public class Test {

public static void main(String[] args){
int x=0;
int n=0;
for(int i=1;;i++){
x=x+getJieCheng(i);
if(x>9999){
n=i;
break;
}
}

x=x-getJieCheng(n);
n-=1;
System.out.println("最大值为:"+x);
System.out.println("最大的n值为:"+n);
}
public static int getJieCheng(int n){
int index=1;
for(int i=1;i<n;i++){
index=index*(i+1);
}
return index;
}
}
相似回答