编写一个函数,求一个正整数n的各位数字之和,并在主程序中测试该函数。 (1)使用str()函数将该正整数n转换为字符串s。 (2)遍历字符串s,取出数字字符,并使用int()函数将其转换为整数m。 (3)每次遍历时,将整数m 累加到sum 变量,退出循环后,将sum作为函数返回值, 即得正整数n的各位数字之和。
时间: 2024-02-17 20:03:18 浏览: 59
好的,以下是Python代码实现:
```python
def sum_digits(n):
s = str(n)
sum = 0
for digit in s:
m = int(digit)
sum += m
return sum
# 测试函数
num = 123456789
result = sum_digits(num)
print("数字{}的各位数字之和为: {}".format(num, result))
```
运行结果为:
```
数字123456789的各位数字之和为: 45
```
注意:该函数只适用于正整数,对于负数和小数会出现错误。
相关问题
编写一个函数fun,求一个正整数n的各位数字和并在主程序中测试该函数。
好的,以下是函数fun的实现(使用Python语言):
```python
def fun(n):
"""
计算正整数n的各位数字之和
"""
sum = 0
while n > 0:
sum += n % 10
n = n // 10
return sum
```
在主程序中,我们可以调用函数fun,并打印出结果:
```python
n = 12345
print(fun(n)) # 输出15,因为1+2+3+4+5=15
```
运行结果为:
```
15
```
希望能解答您的问题。
编写一个函数,求一个正整数n和各位数字之和,并在主程序中测试该函数
好的,我可以解答这个问题。以下是求正整数n和各位数字之和的函数:
```
def sum_digits(n):
sum = 0
while n > 0:
sum += n % 10
n //= 10
return sum
```
在主程序中测试该函数,可以输入以下代码:
```
n = 12345
print("数字", n, "的各位数字之和为", sum_digits(n))
```
输出结果:数字 12345 的各位数字之和为15。
希望这个函数能对您有所帮助!
阅读全文