写出代码:输入一个大于等于4的偶数n,可以分解成两个质数的和。使得两个质数的差尽量小
时间: 2024-03-17 14:46:21 浏览: 125
Every even number is equal to the difference of two prime number
以下是Python的代码实现:
```python
def is_prime(num):
if num < 2:
return False
for i in range(2, int(num ** 0.5) + 1):
if num % i == 0:
return False
return True
n = int(input("请输入一个大于等于4的偶数:"))
assert n >= 4 and n % 2 == 0, "输入错误!"
half_n = n // 2
for i in range(half_n, 1, -1):
if is_prime(i) and is_prime(n - i):
print(i, n - i)
break
```
代码实现思路如下:
1. 判断输入是否合法,即n必须大于等于4且为偶数;
2. 从大于等于n/2的质数开始循环,如果找到两个质数的和等于n,则输出;
3. 因为要让两个质数的差尽量小,所以从大的质数开始往下找,找到第一个符合条件的就输出并结束循环。
阅读全文