用java代码写出100的阶乘
时间: 2024-05-05 20:16:55 浏览: 11
```
import java.math.BigInteger;
public class Factorial {
public static void main(String[] args) {
BigInteger factorial = BigInteger.ONE;
for (int i = 2; i <= 100; i++) {
factorial = factorial.multiply(BigInteger.valueOf(i));
}
System.out.println(factorial);
}
}
```
输出结果为:93326215443944152681699238856266700490715968264381621468592963895217599993229915608941463976156518286253697920827223758251185210916864000000000000000000000000
相关问题
java5的阶乘用do
### 回答1:
while循环实现可以这样写:
```java
public static int factorial(int n) {
if (n < 0) {
throw new IllegalArgumentException("n不能为负数");
}
int result = 1;
int i = 1;
do {
result *= i;
i++;
} while (i <= n);
return result;
}
```
这个方法会计算n的阶乘,如果n为负数会抛出IllegalArgumentException异常。在do while循环中,先计算result和i的初始值,然后在循环中每次将i加1,同时将result乘以i,直到i大于n时跳出循环,返回result的值。
### 回答2:
计算阶乘是一种常见的编程问题。在Java中,可以使用循环结构(如do-while循环)来计算阶乘。
Java 5的阶乘使用do-while循环的示例代码如下:
```java
public class Factorial {
public static void main(String[] args) {
int number = 5; // 要计算阶乘的数
int factorial = 1; // 存储阶乘的结果
if (number < 0) {
System.out.println("输入的数不能为负数");
} else {
int i = 1;
do {
factorial *= i;
i++;
} while (i <= number);
System.out.println(number + "的阶乘是:" + factorial);
}
}
}
```
上述代码中使用了变量`number`存储要计算阶乘的数,并初始化为5。然后使用变量`factorial`存储阶乘的结果,并初始化为1。
使用do-while循环从1开始依次计算乘积,直到循环变量`i`等于`number`为止。在每次循环中,将乘积累积到`factorial`中,并将`i`递增。
最后,输出计算结果。
如果输入的数是负数,则输出提示信息。否则,计算并输出阶乘结果。
以上就是使用do-while循环计算Java 5的阶乘的示例代码,希望对你有帮助。
### 回答3:
在Java 5中,可以使用do-while循环来计算阶乘。阶乘是指对于一个正整数n,它的阶乘(表示为n!)是指小于或等于n的所有正整数的乘积。
代码示例:
```java
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.print("请输入一个正整数:");
int n = scanner.nextInt();
int result = 1;
if (n >= 0) {
int i = 1;
do {
result *= i;
i++;
} while (i <= n);
System.out.println(n + "! = " + result);
} else {
System.out.println("请输入一个非负整数!");
}
scanner.close();
}
}
```
在这个代码中,我们首先使用Scanner类从用户输入中获取一个正整数n。然后,我们使用do-while循环来计算从1到n的所有整数的乘积。循环内部,我们将当前迭代的整数i乘以结果result,并将i递增一次。当i大于n时,循环终止。
最后,我们输出结果result,即n的阶乘。
注意,在这个代码中我们加入了一个条件判断,如果用户输入的数是负数,就会提示用户输入一个非负整数。这是为了保证阶乘只能计算非负整数的情况。
写一段递归运算的java代码
以下是一个递归计算阶乘的Java代码:
public class RecursiveFactorial {
public static void main(String[] args) {
int num = 5;
int result = factorial(num);
System.out.println("The factorial of " + num + " is " + result);
}
public static int factorial(int n) {
if (n == 0) {
return 1;
} else {
return n * factorial(n-1);
}
}
}
在这个例子中,factorial() 方法会通过递归调用自身来计算阶乘。如果 n 等于 0,就返回 1。否则,就返回 n 乘以 factorial(n-1) 的结果。这个过程会一直重复,直到 n 等于 0。最终,该方法返回计算出的阶乘值。