用java编写产生一个0到20之间的随机整数,然后计算并打印它的阶乘
时间: 2023-09-06 14:04:58 浏览: 216
### 回答1:
下面是示例代码:
```
import java.util.Random;
public class Main {
public static void main(String[] args) {
Random rand = new Random();
int num = rand.nextInt(21);
System.out.println("随机生成的数字:" + num);
int factorial = 1;
for (int i = 1; i <= num; i++) {
factorial *= i;
}
System.out.println(num + "的阶乘:" + factorial);
}
}
```
说明:
- 首先,我们使用 `java.util.Random` 类生成一个0到20之间的随机整数。
- 然后,使用循环和乘法计算该数的阶乘,并将结果存储在 `factorial` 变量中。
- 最后,使用 `System.out.println` 输出随机数和它的阶乘。
### 回答2:
在Java中,可以使用Math类中的random方法生成一个0到20之间的随机整数,然后使用循环计算它的阶乘,并将结果打印出来。
下面是一个实现此功能的代码示例:
```java
import java.util.Random;
public class RandomFactorial {
public static void main(String[] args) {
// 生成0到20之间的随机整数
int randomNumber = getRandomNumber(0, 20);
// 计算随机整数的阶乘
long factorial = calculateFactorial(randomNumber);
// 打印阶乘结果
System.out.println(randomNumber + "的阶乘是: " + factorial);
}
// 生成指定范围内的随机整数
public static int getRandomNumber(int min, int max) {
Random random = new Random();
return random.nextInt(max - min + 1) + min;
}
// 计算阶乘
public static long calculateFactorial(int n) {
if (n == 0) {
return 1;
}
long factorial = 1;
for (int i = 1; i <= n; i++) {
factorial *= i;
}
return factorial;
}
}
```
以上代码中,首先使用getRandomNumber方法生成一个0到20之间的随机整数。然后,使用calculateFactorial方法计算这个随机整数的阶乘。最后,将结果打印出来。
注意,由于20的阶乘非常大,超出了int类型的范围,因此我们在计算阶乘时使用了long类型来存储结果。
### 回答3:
可以使用Java的随机数生成函数生成0到20之间的随机整数,然后使用循环计算其阶乘,并打印结果。
具体代码如下所示:
```java
import java.util.Random;
public class Main {
public static void main(String[] args) {
// 生成0到20之间的随机整数
Random random = new Random();
int num = random.nextInt(21);
System.out.println("随机整数:" + num);
// 计算阶乘
long factorial = 1;
for (int i = 2; i <= num; i++) {
factorial *= i;
}
System.out.println("阶乘结果:" + factorial);
}
}
```
首先,我们使用`Random`类创建一个随机数生成器对象`random`,然后调用`nextInt(21)`方法生成0到20之间的随机整数,并将结果保存在变量`num`中。
然后,我们使用一个循环从2开始依次遍历到`num`,然后每次将当前数乘以`factorial`,最后得到的`factorial`就是`num`的阶乘。
最后,我们使用`System.out.println`打印出随机整数和阶乘结果。
阅读全文