用JAVA做 随便输入一个数 求阶乘

从命令行接受一个整数(不大于10),求它的阶乘。

public static void main(String[] args) {
System.out.println("输入一个不大于10的正整数:");
Scanner scan = new Scanner(System.in);
int num = scan.nextInt();
if(num > 10 || num < 1){
System.out.println("输入有误!");
}else{
for(int i = num-1 ;i >= 1;i--){
num = num * i;
}
System.out.println(num);
}

}
温馨提示:内容为网友见解,仅供参考
第1个回答  2013-11-12
public class tt { public int sum(int x) { if(x==1) return 1; return x*sum(x-1); } public static void main(String args[]) { Scanner input =new Scanner(System.in); int x=input.nextInt();
tt aa=new tt(); int lastReason=aa.sum(x); System.out.println(lastReason); } }
第2个回答  2018-03-14
int a ;
int b = 1;
for (int i = 0; i < a ; i++) {
b = b * i+1;
}
a是你输入的数. b是结果
满意请采纳,谢谢!
第3个回答  2013-11-12
这个是用IO流进行输入的哦,到后面你们都是这样写了,求阶乘的方法是用递归的方式写的,你可以找找递归的资料,很有意思的
第4个回答  2013-11-12
递归

java输入一个数n,计算n的阶乘(5的阶乘=1*2*3*4*5)
int t=5,i=4; \/\/要是求其他的数的阶乘的话,把t的值改为其他数,\/\/再把i改为(t-1)就行了 while(i>=1){ t=t*i;i--;} printf("5的阶乘结果是:%d\\n",t);return 0;} 2、运行结果如下:3、上面这种方法虽然能求出结果,但是不能求任意的数,也没有考虑到0!=1,这种情...

编写一个JAVA程序,从键盘输入一个数,计算阶乘.如输入:3,则输出1!+2...
import java.util.Scanner;public class A{ \/\/下面的方法是对单个数求阶乘,并返回 public static int jieCheng(int n){ int sum=1;for(int i=1;i<=n;i++){ sum*=i;} return sum;} \/\/下面是对所有数求阶乘,再全部相加,并返回 public static int add(int n){ int sum=0;for(int ...

在java中,用递归方法计算n的阶乘。
用Java求键盘输入的数的阶乘n。(递归算法)packagejiecheng; importjava.util.*; \/\/导入java.util包中的所有类classrep{ publiclongrep(intn){ longi=0; if(n==0||n==1) i=1;elsi=n*rep(n-1) returni; } } publicclassJie { publicstaticvoidmain(String[] args) { intn; ...

用Java 求8的阶乘 怎么求
使用非递归求解n的阶乘 param n--参数,被计算的阶乘 return 返回n的阶乘计算出来的结果 \/ public int doFactorial2(int n){ int result=1;\/\/结果 if(n<0){\/\/传入的n不合法 return -1;\/\/返回-1,说明参数不合法 } if(n==0){\/\/0!=1 return 1;} for(int i=1;i<=n;i++){\/\/...

编写一个JAVA程序,从键盘输入一个数,计算阶乘.如输入:3,则输出1!+2...
import java.util.Scanner;public class Help { public static void main(String[] args) { System.out.println("请输入一个一个整数:");Scanner input=new Scanner(System.in);int a=input.nextInt();int result=jie(a);System.out.println("结果是:"+result);} private static int jie(...

java怎么写求阶乘?
亲测可用 long jiecheng(int x){ long int i,k=1;for(i=1;i<=x;i++)k=k*i;return k;} int main(){ long int j,k=0;int i;for(i=1;i<=20;i++){ j=jiecheng(i);k+=j;} printf("%ld\\n",k);} 输出的结果是2561327494111820313 ...

编写Java程序,实现接受用户输入的正整数,输出该数的阶乘。例如,输
按照你的要求编写的求阶乘的Java程序如下 import java.util.Scanner;public class DDD { public static void main(String[] args) { System.out.print("请输入一个正整数(1~10)"); Scanner sc=new Scanner(System.in); int n=sc.nextInt(); if(n<1 || n>10){ System.out....

编写java程序,实现接收用户输入的正整数,输出该数的阶乘
按照你的要求编写的求阶乘的Java程序如下 import java.util.Scanner;public class EE { public static void main(String[] args) { Scanner sc=new Scanner(System.in); System.out.println("请输入一个正整数"); int n=sc.nextInt(); if(n<0) System.out.println("输入错误!"); ...

Java 编写一个方法,求一个数的阶乘。 n!=1×2×3×...×n,比如3!=1*...
阶乘是比较适合递归的思路,因为n!=n*(n-1)!,直到求解1!作为结束 代码(因为不太熟悉java,可能还需要题主进行微调)long Factorials(int n){ if(n<0) return -1;\/\/主要为了表示错误,题主可以自定义 if(n==1||n==0) return 1;\/\/0!是特殊约定,1!是作为递归的结束 else return n*...

编写程序(java):输入一个整数n,计算n的阶乘并捕捉可能出现的异常...
import java.util.*; public class T { public static void main(String[] args){ try{ Scanner input = new Scanner(System.in); String num = input.nextLine(); if(!num.match("[^0]\\\\d+$")) { throw new RuntimeException("输入的不是自然数"); } if(L...

相似回答