You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

编写Python程序实现区间质数打印及分类功能

Python 打印指定区间内的所有质数

需求说明

定义接收两个整数参数(start、end)的函数,筛选区间内的质数并打印。

修正后的代码

def is_prime(n):
    # 质数必须大于1
    if n <= 1:
        return False
    # 特殊处理唯一的偶质数2
    if n == 2:
        return True
    # 偶数直接排除
    if n % 2 == 0:
        return False
    # 仅检查到n的平方根,减少循环次数提升效率
    for i in range(3, int(n**0.5) + 1, 2):
        if n % i == 0:
            return False
    return True

def print_primes(start, end):
    # 遍历区间内所有数(包含end),筛选并打印质数
    for num in range(start, end + 1):
        if is_prime(num):
            print(num)

# 修复原代码的语法错误,获取用户输入
a = int(input("Start value: "))
b = int(input("End value: "))
print_primes(a, b)

关键优化说明

  • 质数判断逻辑修正:原代码的循环范围错误会导致所有数被判定为非质数,优化后通过边界判断、偶质数单独处理、缩小循环范围,准确且高效地识别质数
  • 区间范围修正:原代码range(start, end)不包含end值,调整为range(start, end + 1)确保覆盖完整区间
  • 语法修复:补全了原代码输入语句缺失的右括号,避免运行报错

内容的提问来源于stack exchange,提问作者Parvathi Pradeep

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.06 16:45:25