用Java编写程序,编写一个程序,提示用户输入一个正整数,然后以降序显示它的所有最小因子。 例如:如果整数为120, 那么显示的最小因子为 5、3、2、2、2。使用StackOflntegers类(该类参照书上例子程序完成)存储因子(例如:2、2、2、3、5), 获取之后按倒序显示这些因子。 输入范例: 输入: 1245 输出(因子之间加一个空格): 83 5 3
时间: 2024-03-24 11:39:16 浏览: 51
以下是实现该程序的代码:
```java
import java.util.Scanner;
import java.util.Stack;
public class Main {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.print("请输入一个正整数:");
int num = scanner.nextInt();
Stack<Integer> stack = new Stack<>();
int factor = 2;
while (num > 1) {
if (num % factor == 0) {
stack.push(factor);
num /= factor;
} else {
factor++;
}
}
System.out.print("因子按降序显示:");
while (!stack.isEmpty()) {
System.out.print(stack.pop() + " ");
}
}
}
```
运行程序,输入1245,输出结果为:83 5 3
阅读全文