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

求助:100 Days of Code Day9秘密拍卖程序逻辑错误排查

问题排查与修复

你的程序总是输出最后输入的出价者,核心问题出在遍历竞拍字典的逻辑里:

在最后的for循环中,你使用了变量bid来和highest_bid比较,但这个bid是while循环最后一次输入的出价数值,并不是当前遍历到的竞拍者对应的出价。因此每次比较都在用最后一次的出价更新最高值,最终结果自然是最后输入的竞拍者。

修复代码

把for循环部分修改为以下内容:

highest_bid = 0
winner = ""

for bidder in bids:
    current_bid = bids[bidder]
    if current_bid > highest_bid:
        highest_bid = current_bid
        winner = bidder

说明

  • 初始化winner变量,避免极端场景下的未定义报错
  • 用current_bid = bids[bidder]获取当前遍历到的竞拍者的真实出价,再与最高出价做对比
  • 修正后每次遍历都会正确校验每个竞拍者的出价,最终能找到真正的最高出价者

内容的提问来源于stack exchange,提问作者Vahaj Qureshi

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.12 20:30:38