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

编写程序统计输入数字的零、奇数及非零偶数位并修复首零统计问题

问题解决:统计含前导零数字的各类数字数量

问题根源

原代码中n=int(input())会将输入的带前导零的字符串(如012)转换为整数12,直接丢失了前导零,导致后续统计时无法识别开头的零。

修改后的代码

str_number = input().strip()
zero = 0
odd = 0
even = 0
for i in str_number:
    # 可选校验:确保输入为纯数字,若用户保证输入合法可省略
    if not i.isdigit():
        print("请输入纯数字")
        exit()
    digit = int(i)
    if digit == 0:
        zero += 1
    elif digit % 2 == 0:
        even += 1
    else:
        odd += 1
print(f"Number of odd digits:{odd}")
print(f"Number of non-zero even digits:{even}")
print(f"Number of zeros:{zero}")

关键修改点

  • 直接保留输入的原始字符串,不做整数转换,完整保留所有输入的数字字符(包括前导零)
  • 可选添加输入格式校验,避免非数字输入干扰统计逻辑

测试示例

输入:012
输出:

Number of odd digits:1
Number of non-zero even digits:1
Number of zeros:1

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.29 16:17:05