问答社区
判断一个数是否为素数(质数)的代码可以用多种编程语言实现
判断一个数是否为素数(质数)的代码可以用多种编程语言实现。以下是几种常见编程语言的示例代码:
### Python
```python
def is_prime(n):
if n <= 1:
return False
if n <= 3:
return True
if n % 2 == 0 or n % 3 == 0:
return False
i = 5
while i * i <= n:
if n % i == 0 or n % (i + 2) == 0:
return False
i += 6
return True
# 测试
print(is_prime(29)) # 输出: True
print(is_prime(15)) # 输出: False
```
### Java
```java
public class PrimeChecker {
public static boolean isPrime(int n) {
if (n <= 1) {
return false;
}
if (n <= 3) {
return true;
}
if (n % 2 == 0 || n % 3 == 0) {
return false;
}
for (int i = 5; i * i <= n; i += 6) {
if (n % i == 0 || n % (i + 2) == 0) {
return false;
}
}
return true;
}
public static void main(String[] args) {
System.out.println(isPrime(29)); // 输出: true
System.out.println(isPrime(15)); // 输出: false
}
}
```
### C++
```cpp
#include <iostream>
using namespace std;
bool isPrime(int n) {
if (n <= 1) return false;
if (n <= 3) return true;
if (n % 2 == 0 || n % 3 == 0) return false;
for (int i = 5; i * i <= n; i += 6) {
if (n % i == 0 || n % (i + 2) == 0) return false;
}
return true;
}
int main() {
cout << isPrime(29) << endl; // 输出: 1 (true)
cout << isPrime(15) << endl; // 输出: 0 (false)
return 0;
}
```
### JavaScript
```javascript
function isPrime(n) {
if (n <= 1) return false;
if (n <= 3) return true;
if (n % 2 === 0 || n % 3 === 0) return false;
for (let i = 5; i * i <= n; i += 6) {
if (n % i === 0 || n % (i + 2) === 0) return false;
}
return true;
}
// 测试
console.log(isPrime(29)); // 输出: true
console.log(isPrime(15)); // 输出: false
```
### Go
```go
package main
import (
"fmt"
)
func isPrime(n int) bool {
if n <= 1 {
return false
}
if n <= 3 {
return true
}
if n%2 == 0 || n%3 == 0 {
return false
}
for i := 5; i*i <= n; i += 6 {
if n%i == 0 || n%(i+2) == 0 {
return false
}
}
return true
}
func main() {
fmt.Println(isPrime(29)) // 输出: true
fmt.Println(isPrime(15)) // 输出: false
}
```
这些代码示例展示了如何使用不同的编程语言来判断一个数是否为素数。每种语言的语法和结构略有不同,但逻辑是相同的。