编写主程序合并迭代与递归数位求和函数,输出两者计算结果
合并迭代与递归数位求和函数为单个程序
你只需要给两个函数起不同的名字避免冲突,然后仅做一次输入,分别调用两个函数并输出结果即可。以下是修改后的完整代码:
# 迭代实现数位求和 def sumdigits_iterative(n): sum_total = 0 while n != 0: sum_total += n % 10 n = n // 10 return sum_total # 递归实现数位求和 def sumdigits_recursive(no): return 0 if no == 0 else int(no % 10) + sumdigits_recursive(int(no / 10)) # 单次输入正整数 n = int(input("请输入正整数: ")) # 分别输出两个函数的计算结果 print(f"迭代方法计算结果: {sumdigits_iterative(n)}") print(f"递归方法计算结果: {sumdigits_recursive(n)}")
关键修改说明:
- 将两个同名的
sumdigits函数分别重命名为sumdigits_iterative和sumdigits_recursive,避免函数名冲突导致的覆盖问题 - 只执行一次输入操作,简化用户交互流程
- 使用格式化字符串清晰标注每个结果对应的实现方式,便于区分
内容的提问来源于stack exchange,提问作者koral ina
相关产品推荐
相关产品推荐

