pytnon获得输入正数m,计算其各位数字的平方和直接输出结果
时间: 2023-09-16 16:05:31 浏览: 127
### 回答1:
可以这样做:
```
m = int(input("请输入一个正数: "))
# 将数字转换为字符串
m_str = str(m)
# 初始化结果变量
result = 0
# 遍历每一位数字,并计算其平方和
for char in m_str:
result += int(char) ** 2
# 输出结果
print(result)
```
这段代码会提示用户输入一个正数,然后计算其各位数字的平方和,最后直接输出结果。
### 回答2:
可以使用以下的Python代码来实现题目要求:
```python
def sum_of_digit_squares(m):
# 将输入的正数转换为字符串形式
num_str = str(m)
# 初始化平方和为0
sum = 0
# 遍历每一位数字的字符串形式
for digit_str in num_str:
# 将字符串形式的数字转换为整数
digit = int(digit_str)
# 将该数字的平方加到平方和上
sum += digit**2
return sum
# 获取用户输入的正数
m = int(input("请输入一个正整数: "))
# 调用函数计算各位数字的平方和
result = sum_of_digit_squares(m)
# 输出结果
print("各位数字的平方和为:", result)
```
这段代码首先定义了一个函数 `sum_of_digit_squares`,该函数接受一个正整数作为输入,并计算该正整数每位数字的平方和。它将输入的正整数转换为字符串形式,然后对于每一位数字,将其转换为整数并将其平方累加到平方和上。最后,程序获取用户输入的正数 `m`,调用 `sum_of_digit_squares` 函数计算各位数字的平方和,并将结果输出。
### 回答3:
可以使用以下代码来实现:
```
m = int(input("请输入一个正数m:"))
# 初始化平方和为0
sum_of_squares = 0
# 依次计算m的各位数字的平方并累加到sum_of_squares中
while m > 0:
digit = m % 10
sum_of_squares += digit ** 2
m //= 10
print("各位数字的平方和为:", sum_of_squares)
```
首先,我们使用`input`函数获取用户输入的正数m,并转换成整数类型。然后,我们初始化一个变量`sum_of_squares`作为平方和的初始值为0。
接下来,我们使用一个`while`循环来依次计算m的个位、十位、百位等各位数字的平方,并将其累加到`sum_of_squares`中。循环的条件是m大于0,当m除以10取余数得到最后一位数字时,我们将其平方加到`sum_of_squares`中,然后通过整除运算`m //= 10`将m的最后一位数字去除。这样循环会一直执行直到m变为0。
最后,我们使用`print`函数输出计算结果,即各位数字的平方和。
阅读全文