哥德巴赫猜想学习

前言

任意大于2的偶数都是两个质数的和,对于101810^{18}1018以内所有数字

书里提的

对于计算机科学家来说,证明程序和系统的正确性是最重要的事情之一,

  • 即程序或系统是否确实按照预期运行。

python代码实现

python 复制代码
def sieve_of_eratosthenes(limit):
    sieve = [True] * (limit + 1)
    sieve[0] = sieve[1] = False
    for num in range(2, int(limit ** 0.5) + 1):
        if sieve[num]:
            sieve[num*num : limit+1 : num] = [False] * len(sieve[num*num : limit+1 : num])
    primes = [i for i, is_prime in enumerate(sieve) if is_prime]
    return primes

def goldbach_conjecture(even_number, primes):
    for prime in primes:
        if prime > even_number // 2:
            break
        if (even_number - prime) in primes_set:
            return (prime, even_number - prime)
    return None

# 示例使用
limit = 10000
primes = sieve_of_eratosthenes(limit)
primes_set = set(primes)

even_number = 56  # 可以替换为任何大于2的偶数
result = goldbach_conjecture(even_number, primes_set)
if result:
    print(f"{even_number} = {result[0]} + {result[1]}")
else:
    print(f"No primes found for {even_number}")
相关推荐
北京云帆互联科技3 小时前
云帆培训考试系统更新说明:v9.3.0
java·学习
sxlishaobin5 小时前
Maven Setting详解
java·学习·maven
li星野1 天前
相位补偿学习记录:把被颅骨“打乱“的声波重新对齐
学习
Z21-X1 天前
云原生运维学习笔记:ECShop全链路容器化部署与Docker底层资源隔离深度剖析
运维·笔记·学习·云原生
red_redemption1 天前
自由学习记录(230)
学习
晓梦林1 天前
BUUCTF-菜刀流量-MISC-学习笔记
笔记·学习
Godspeed Zhao2 天前
从零开始学AI25——无监督学习之层次聚类
学习·机器学习·聚类
David猪大卫2 天前
【C++修炼】map 和 set 的使用
c语言·开发语言·数据结构·c++·经验分享·笔记·学习
HPtiger2 天前
C++ 入门笔记:从 C 到 C++ 的核心过渡(命名空间、输入输出、缺省参数、重载、引用、内联)
c语言·c++·学习
fengci.2 天前
CTF2MISC中等部分
开发语言·前端·学习