Java课后习题,求满足1!+2!+3!+...+n!<9999的最大整数n

这是我的算法
int item = 1, sum = 0, i = 1;
for (i = 1; i <= 20; i++) {
item = item * i;
sum = sum + item;
if(sum>9999){
break;
}
System.out.println(i);
问题是它输出1~7我要怎么改才能让它只输出一个7?

我晕啊,你把System.out.println(i);放到for循环的外面不就行了嘛。
或者把System.out.println(i);放到break;的前面,也就是在if语句里。追问

我去,放外面输出i-1就行了,我好笨啊.....

追答

呵呵,没什么,我多试试就知道了,我也觉得自己很笨,哈哈。

温馨提示:答案为网友推荐,仅供参考
第1个回答  2012-11-19
你把输出语句放到for循环的外面去就行了啊追问

谢谢啦~

第2个回答  2012-11-19
追问

真心不知道..我好菜的

追答

我也看不懂!0.0

第3个回答  2012-11-19
int item=1, sum=0, i=1;
for(i=1; i <= 20; i++) {
item=item * i;
sum=sum + item;
if(sum > 9999) {
System.out.println(i-1);//放到if里面
break;
}
}
第4个回答  2012-11-19
最好用递归算法追问

谢谢啦~

相似回答