什么是哥德巴赫猜想?

哥德巴赫猜想是数论中最著名的未解问题之一,由克里斯蒂安·哥德巴赫在1742年提出:

任一大于2的偶数,都可表示成两个质数之和。

尽管这个猜想尚未被完全证明,但已经通过计算机验证在极大范围内成立。本教程将展示如何使用Python实现哥德巴赫分解算法,找出任意偶数的质数对表示。

28
5
+
23

28的哥德巴赫分解示例

哥德巴赫分解算法实现步骤

1

实现质数判断函数

创建一个函数来检查一个数是否为质数。质数是大于1且只能被1和自身整除的自然数。

2

遍历可能的质数组合

对于给定的偶数n,从2开始遍历到n/2的所有质数p,检查n-p是否也是质数。

3

返回找到的质数对

当找到一对质数(p, n-p)时,返回这对质数作为哥德巴赫分解结果。

Python实现代码

goldbach.py
def is_prime(n):
    """检查一个数是否为质数"""
    if n < 2:
        return False
    for i in range(2, int(n**0.5) + 1):
        if n % i == 0:
            return False
    return True

def goldbach_decomposition(n):
    """返回偶数n的哥德巴赫分解"""
    if n % 2 != 0 or n <= 2:
        raise ValueError("输入必须是大于2的偶数")
    
    for p in range(2, n//2 + 1):
        if is_prime(p) and is_prime(n - p):
            return (p, n - p)
    
    # 理论上不会执行到这里,因为哥德巴赫猜想在验证范围内成立
    return None

# 示例用法
n = 28
prime1, prime2 = goldbach_decomposition(n)
print(f"{n} = {prime1} + {prime2}")  # 输出: 28 = 5 + 23

在线尝试哥德巴赫分解

输入一个大于2的偶数,查看它的哥德巴赫分解:

分解结果将显示在这里...