用java用递归方法计算n!,并在屏幕上显示计算结果。(提示: n!=n*(n-l)!,1! =l;n值在程序中不要求键盘输入,n=11)
时间: 2023-09-09 21:04:24 浏览: 166
### 回答1:
在 Java 中,可以使用递归方法来计算 n!。
递归函数的基本思路是:如果所求的值已经知道,则直接返回该值;否则,递归调用函数本身来求解问题。
例如,在计算 n! 的时候,可以使用以下的递归函数:
```
public static int factorial(int n) {
if (n == 1) {
return 1;
}
return n * factorial(n - 1);
}
```
调用该函数时,可以这样做:
```
int result = factorial(11);
System.out.println(result);
```
这样,就可以在屏幕上显示计算 11! 的结果了。
### 回答2:
要用递归方法计算n!,可以定义一个递归函数factorial,函数的参数是一个整数n,函数的返回值是n的阶乘。
首先,我们需要定义递归函数的终止条件,当n等于1时,直接返回1。
接下来,我们可以使用递归的思想来计算n!。由于n! = n*(n-1)!,我们可以调用递归函数factorial来计算(n-1)!,然后将结果乘以n,最后返回这个结果。
在程序中,我们可以定义一个名为factorial的静态方法来实现这个递归算法。首先,判断n是否等于1,如果是,则返回1。否则,调用递归函数factorial计算(n-1)!,然后将结果乘以n,最后返回这个结果。
下面是用Java代码实现这个递归算法的示例:
public class Factorial {
public static int factorial(int n){
if(n==1){
return 1;
}
return n * factorial(n-1);
}
public static void main(String[] args) {
int n = 11;
int result = factorial(n);
System.out.println(n + "! = " + result);
}
}
运行上述代码,屏幕上将显示:
11! = 39916800
### 回答3:
使用递归方法计算n!的过程如下:
首先,我们需要定义一个递归函数来计算阶乘。
```java
public static int factorial(int n) {
// 终止条件
if (n == 1) {
return 1;
}
// 递归调用,计算 n-1 的阶乘
int result = n * factorial(n-1);
return result;
}
```
然后,我们可以在主函数中调用递归函数来计算阶乘并在屏幕上显示结果。
```java
public static void main(String[] args) {
int n = 11;
// 调用递归函数计算 n!
int result = factorial(n);
// 打印计算结果
System.out.println(n + "! = " + result);
}
```
当 n 的值为 11 时,程序会计算出 11! 的结果,并在屏幕上显示出来。
输出结果如下:
```
11! = 39916800
```
这就是使用递归方法计算 n! 并在屏幕上显示计算结果的方法。
阅读全文