我知道这没什么大不了的,但我讨厌我的程序在做什么。这是我编写的一个简单程序,它要求用户输入一个整数,然后打印出它的所有因数。例如,当用户输入 150 时,程序应该打印 2、3、5、5。
这是我的程序(它有效)
import java.util.Scanner;
public class FirstProgram {
public static void main(String[] args) {
Scanner scan = new Scanner(System.in);
int number;
int divisor = 2;
System.out.println("Enter the number: ");
number = scan.nextInt();
while (number > 1) {
if ((number % (number / divisor)) == 0 && number > 0) {
number = number / divisor;
System.out.print(divisor);
if (number != 1)
System.out.print(", ");
}
else if ((number % (number / divisor)) != 0 && number > 1) {
divisor++;
if (number == 1) {
System.out.println(number);
System.out.println();
}
}
}
}
}
让我发疯的愚蠢问题是成绩单的最后一行。当它打印 2, 3, 5, 5 时,程序结束并在同一行结束。这是一张图片,因为我无法描述事物:
我尝试了一些东西,但是作为编程新手,我没有很多选择可以尝试。谢谢您的帮助!