使用getrandom、isOdd等函数生成1-100随机数并统计奇偶数量
Python 奇偶计数功能实现
需求说明
对随机生成器返回的每一个值,分别统计生成的偶数和奇数的总个数。
要求必须使用getrandom、isOdd、update、display四个函数完成功能。
现有问题代码
import random def getrandom(): x = random.randint(1,100) return x def isOdd(f): if f % 2 == 0: return False else: return True def main(): print("Random number generator") for i in range(0,1000): x = getrandom() f = isOdd(x) import random main()
原有代码存在以下问题:
- 缺少要求的
update、display两个核心函数 - 生成随机数的循环逻辑写在
main函数外,不会随main执行生效 - 重复导入
random库 - 输出内容不符合要求格式
修正后完整代码
import random # 生成1-100的随机数 def getrandom(): return random.randint(1, 100) # 判断是否为奇数,是返回True,否返回False def isOdd(num): return num % 2 != 0 # 更新奇偶计数 def update(is_odd, odd_count, even_count): if is_odd: odd_count += 1 else: even_count += 1 return odd_count, even_count # 输出统计结果 def display(odd_count, even_count): print("奇偶计数挑战") print("正在生成随机数......") print("随机生成1000个1到100之间的数字后:") print(f"奇数个数:{odd_count}") print(f"偶数个数:{even_count}") print("程序结束。") def main(): odd_count = 0 even_count = 0 for _ in range(1000): num = getrandom() odd_flag = isOdd(num) odd_count, even_count = update(odd_flag, odd_count, even_count) display(odd_count, even_count) if __name__ == "__main__": main()
输出示例
奇偶计数挑战 正在生成随机数...... 随机生成1000个1到100之间的数字后: 奇数个数:524 偶数个数:476 程序结束。
内容的提问来源于stack exchange,提问作者Dalton
相关产品推荐
相关产品推荐

