当前位置: 代码迷 >> J2SE >> 自学,想了这有关问题一天后无果;求指导
  详细解决方案

自学,想了这有关问题一天后无果;求指导

热度:137   发布时间:2016-04-23 20:15:07.0
自学,想了这问题一天后无果;求指导
输入正整数,输出该数的阶乘。例如,输入4,
输出4!=1*2*3*4=24,( 就是输出最后面的那等式,如何操作,我只会弄阶乘的结果)最后,希望涉及的语句不要太深奥,我很可能看不懂。求谅解!谢谢,各位大神的帮助。
------解决思路----------------------

int  n ;//用来接收输入的数字。
StringBuffer sb = new StringBuffer();
int sum = 1;
for (int i = 1; i <= n; i++) {
if (i < n) {
sb.append(i + "*");
}
if (i == n) {
sb.append(i);
}
sum *= i;
}
System.out.println(n + "! = " + sb.toString() + "=" + sum);

------解决思路----------------------
单用一个for循环不是就出来了么?
------解决思路----------------------

package test;


import junit.framework.TestCase;

public class CommonTest extends TestCase{

public void testResource(){
System.out.println(test(4));
}

public static int test(int n){
int result = 1;
for(int i = 1; i<=n;i++){
result *= i;
}
return result;
}
}


------解决思路----------------------

int n = 10;
long result = 1l;
System.out.print(n + "!=");
for(int i=1; i<n; i++) {
result *= i;
System.out.print(i + "*");
}
result *= n;
System.out.println(n + "=" + result);

这样只有循环了貌似就
  相关解决方案