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

Python代码错误排查:相邻奇数检测问题求解

问题排查与代码修正

原代码核心错误点

  • 循环逻辑完全偏离需求:原代码用range(list1[0], list1[4])遍历的是输入数值的数值范围,而非列表的索引,完全没有针对“相邻元素”进行检查
  • 相邻检测逻辑错误:内层循环没有聚焦于当前元素的下一个相邻元素,而是遍历无关的数值范围,无法实现相邻奇数的判断
  • 输出逻辑混乱:每一次循环都输出结果,没有“找到第一组就终止”的逻辑,导致多次输出不符合预期的内容

修正后的代码

# 按要求用list()、map()、int()处理输入,直接生成整数列表
nums = list(map(int, input().split()))
found_pair = False

# 遍历列表的前4个元素索引,检查当前元素与下一个元素是否均为奇数
for i in range(len(nums) - 1):
    current_num = nums[i]
    next_num = nums[i + 1]
    if current_num % 2 != 0 and next_num % 2 != 0:
        print(f"{current_num}, {next_num}")
        found_pair = True
        break  # 找到第一组符合条件的相邻奇数后立即终止循环

# 若遍历完所有相邻对都未找到,输出NO
if not found_pair:
    print("NO")

代码说明

  1. 输入处理:直接通过list(map(int, input().split()))将输入的字符串分割后转换为整数列表,严格符合要求的函数用法
  2. 循环检测:遍历列表索引0到3(共4组相邻元素),每次检查当前索引对应的元素与下一个元素是否均为奇数
  3. 输出逻辑:找到第一组符合条件的相邻奇数后立即输出并终止循环;若遍历结束未找到任何符合条件的组,输出NO

测试输入5 6 7 8 9时,所有相邻元素均不满足“双奇数”条件,会输出NO,与预期一致。

内容的提问来源于stack exchange,提问作者Jessica _0404 Wu

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.11 00:01:17