程序填空,不要改变与输入输出有关的语句。输入一个正整数repeat (O<repeat<10),做repeat次下列运算读入一个正整数n(n>1),如果它是素数,则给出是素数的信息,否则输出它的质因子乘积的表达式输出要求(所有的输出中不包合空格): System.outprintIn(n+"是素数”;//当n是素数时 System.out .print(n+"=");//非素数时System.out .print(i+"*");//非最后一个质因子 System.out .printIn(i); //最后一个质因子 即:不是素数时,输出的式子中不包含任何空格,一个式子占一行,且要求质因子从小到大, 例:括号内是说明 输入: (repeat=3) 2100 90 输出 : 2是素数 100=2*2*5*590=2*3*3*5
时间: 2024-02-09 08:11:40 浏览: 63
代码如下:
```
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int repeat = sc.nextInt();
while (repeat-- > 0) {
int n = sc.nextInt();
boolean isPrime = true;
for (int i = 2; i <= Math.sqrt(n); i++) {
if (n % i == 0) {
isPrime = false;
while (n % i == 0) {
n /= i;
System.out.print(i + (n == 1 ? "\n" : "*"));
}
}
}
if (isPrime) {
System.out.println(n + "是素数");
} else if (n > 1) {
System.out.println(n);
}
}
}
}
```
阅读全文