从键盘输入一个正整数x,判断x是否为素数。若是素数,输出“yes”,否则输出“no”。java语言
时间: 2024-11-30 10:28:39 浏览: 13
在Java中,你可以使用以下代码来实现这个功能:
```java
import java.util.Scanner;
public class PrimeChecker {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.print("请输入一个正整数:");
int x = scanner.nextInt();
if (isPrime(x)) {
System.out.println("yes");
} else {
System.out.println("no");
}
scanner.close();
}
// 判断一个数是否为素数的函数
private static boolean isPrime(int number) {
if (number <= 1) {
return false;
}
for (int i = 2; i <= Math.sqrt(number); i++) { // 只需检查到sqrt(n),若存在因子则n不是素数
if (number % i == 0) {
return false;
}
}
return true;
}
}
```
这段代码首先从用户那里获取一个输入的正整数,然后调用`isPrime`函数来判断该数是否为素数。`isPrime`函数会遍历从2到该数平方根的所有整数,如果有任何一个数能被它整除(余数为0),那么这个数就不是素数;如果没有,那么它是素数。
注意,当判断一个数是否为素数时,没有必要检查到该数本身,因为大于1的合数必定有一个小于等于它的平方根的因子。这就是为什么循环条件设定为`i <= Math.sqrt(number)`的原因。
阅读全文