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

CS50 Week4滤镜作业:灰度化结果不符及输出匹配疑问

CS50 Filter Grayscale任务问题解析

问题1:计算结果为27而非预期28

  • 核心原因是整数截断而非四舍五入。CS50的灰度转换要求将RGB三通道的平均值四舍五入到最近整数,如果你直接用int()强制转换浮点数结果,或是使用整数除法(比如C语言中(r+g+b)/3,当r/g/b为整数时会直接执行整数除法),会直接舍弃小数部分。比如当平均值是27.5或更高时,截断后得到27,但正确的四舍五入结果应为28。
  • 修正方式:用round()函数对平均值做四舍五入处理,确保得到最接近的整数。

问题2:输出内容看似一致但提示不匹配

  • 别被截断的字符串显示误导,实际差异来自两个可能:
    • 像素数值连锁错误:前面的27/28差异会让后续输出序列和预期完全不符,只是提示仅展示了开头部分,看起来相同。
    • 输出格式问题:比如每行末尾的多余空格、换行符格式(Windows的\r\n和Unix的\n不兼容),或是像素数值间的空格数量不符合要求。例如某像素后多了一个空格,或是最后一行未正确换行。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.03 02:52:03