如何在Python中查找整数的位数之和

291 阅读2分钟

当你编写程序时,几乎到处都会用到整数。在这篇文章中,我们将讨论如何在python中找到一个给定的整数的数字之和。

如何找到一个整数的位数之和?

要找到一个数字N的数字之和,我们可以提取一个数字的数字并逐一相加。 为此,我们将从右到左提取数字。为了提取数位,我们将用数字除以10,并在每次除法运算中储存余数。我们将继续用10除以数字,直到它变成0。

例如,如果我们得到了数字12345,我们将按以下方式计算数字之和。

  • 首先,我们将初始化一个变量sumOfDigits为0。
  • 之后,我们将用12345除以10。
  • 除法后,我们将在sumOfDigits中加入提醒5,并将数字更新为1234。
  • 然后,我们将用1234除以10。
  • 除法后,我们将在sumOfDigits上添加提醒4,并将数字更新为123。
  • 再次,我们将用123除以10。
  • 除法后,我们将在sumOfDigits中加入提醒3,并将数字更新为12。
  • 再次,我们将用12除以10。
  • 除法后,我们将提醒2添加到sumOfDigits中,并将数字更新为1。
  • 现在,我们将用1除以10。
  • 除法后,我们将在sumOfDigits中加入提醒1,并将数字更新为0。
  • 由于数字变成了0,我们将在变量sumOfDigits中得到12345的数字之和,即15。

在Python中的实现

正如我们在上面看到的,要在Python中找到一个整数的位数之和,我们只需要用10除以这个数字,直到它变成0。我们可以通过以下方式实现这一操作的程序。

def calculate_sum_of_digits(N):
    sumOfDigits = 0
    while N > 0:
        digit = N % 10
        sumOfDigits = sumOfDigits + digit
        N = N // 10
    return sumOfDigits


input_number = 12345
output = calculate_sum_of_digits(input_number)
print("Sum of digits of {} is {}.".format(input_number, output))
input_number = 126
output = calculate_sum_of_digits(input_number)
print("Sum of digits of {} is {}.".format(input_number, output))

输出。

Sum of digits of 12345 is 15.
Sum of digits of 126 is 9.

结论

在这篇文章中,我们讨论并实现了一个在Python中寻找整数位数之和的程序。