当前位置: 首页 > 知识库问答 >
问题:

使用用户输入打印出int方法

陶沛
2023-03-14

我试图用两种不同的方式做阶乘方法。第一个是迭代方法,它非常适合打印出来。我很难打印出递归方法,它是一个int方法而不是val。我将如何通过使用与迭代方式相同的输入来打印递归方法?非常感谢任何帮助。我正在尝试在我的main中调用每个方法。

Java代码:

import java.util.Scanner;

public class Factorial
{

    public static void main(String[] args)
    {
        System.out.println("Enter a number");
        Scanner input = new Scanner(System.in);
        int fact = input.nextInt();

        //Call the iterative method
        int ifact = iFactorial(fact);
        System.out.println("The factorial iteratively is: " + ifact);
        //Call the recursive method
        int rfact = rFactorial(fact);
        System.out.println("The factorial recursively is: " + rfact);
    }

    //Iterative method starts
    public static int iFactorial(int fact)
    {

        for(int i = fact-1; i > 0; i--)
        {
            fact *= i;
        }
        return fact;
    }
    //Iterative method ends

    //Recursive method starts
    public static int rFactorial(int fact)
    {
        if(fact == 1)
        {
            return 1;
        }
        else 
        {
            return fact * rFactorial(fact-1);
        }
    }
    //Recursive method ends
}

共有1个答案

彭开畅
2023-03-14

我将如何使用与迭代方法相同的输入打印出递归方法?

使用同样的方法你不能这样做。在递归方法中输入数字提示会一次又一次地出现。您需要在main方法中单独制作以下三行。

 public static void main(String[] args)
{
   System.out.println("Enter a number");
   Scanner input = new Scanner(System.in);
   int fact = input.nextInt();
    //Call the iterative method
    iFactorial(fact);
    //Call the recursive method
    rFactorial(fact);
}
 类似资料:
  • 需要一些专家的建议。首先,这里是我的代码: 我的问题是:当我输入一个用户号码如“3”时,提示我的代码只打印一个__当我希望它打印指定的号码。我无论如何也想不出来。 我是英语专业的,所以这不是我的强项:(形状应该是菱形的。)

  • 本文向大家介绍C++中int类型按字节打印输出的方法,包括了C++中int类型按字节打印输出的方法的使用技巧和注意事项,需要的朋友参考一下 前言 今天在项目编程中,遇到一个问题,u32类型的参数,要赋值给一个u8 array[3],想用memcpy()函数进行赋值,由于类型大小不一致,一时不知道怎么做,经过查找,得以解决。说明如下; 项目是在内网中做,在查找过程中用自己笔记本做了一下实验,vs20

  • 问题内容: 我试图通过限制用户可以输入的内容来使用户输入不使程序崩溃,例如: 只是一个int 在1到30之间 我编写的代码只能在一定程度上起作用。如果您输入的内容不是整数,它将对其进行检查并要求您再次输入。如果您继续输入除int以外的任何内容,则再次输入。我还有另一个while循环,如果它确实输入一个int,并且它在1-30区域之外,则它将要求用户再次输入。但是,此后,如果用户键入另一个“除int

  • 本文向大家介绍Python中输入和输出(打印)数据实例方法,包括了Python中输入和输出(打印)数据实例方法的使用技巧和注意事项,需要的朋友参考一下 一个程序要进行交互,就需要进行输入,进行输入→处理→输出的过程。所以就需要用到输入和输出功能。同样的,在Python中,怎么实现输入和输出? Python3中的输入方式: Python提供了 input() 内置函数从标准输入读入一行文本,默认的标

  • 我有一个flask应用程序,只有一条路线,没有复杂的事情发生,运行在docker容器中。我一辈子都不能让print语句出现在日志中(

  • 问题内容: 我要编写的程序有问题。用户输入正整数,否则程序会提示用户直到他们输入。完成后,程序将打印与用户输入相对应的菱形形状。 到目前为止,我有这张照片可以打印出该图形的左对角线,但无法弄清楚如何打印其余的图形。这是代码: 问题答案: 用户输入正整数,否则程序会提示用户,直到他们输入 您需要循环扫描 现在您可以删除该验证 现在,我在检查循环时意识到的第一件事是不会编译,因为您有一个比较运算符,后