用Python编写程序,将给定数字中的所有0替换为5

给定整数N,任务是将数字中出现的所有0替换为“ 5”。但是,前导数字“ 0”不能替换为“ 5”,因为它保持不变。例如,

输入1 -

N = 1007

输出-

1557

说明-给定的数字有2个零,当被“ 5”替换时,输出为1557。

输入- 2 -

N = 00105

输出-

155

说明-由于给定数字以开头的“ 0”开头,可以忽略,并且将中间的0替换为“ 5”后的输出结果为155。

解决这个问题的方法

要将给定数字中的所有0替换为“ 5”,我们可以找到并提取数字的最后一位。如果该数字的最后一位为'0',则更改该值并将其替换为'5',然后提取另一位数字。但是,必须忽略给定数字中的任何前导0。因此,我们将首先提取最后一个数字,然后再次调用相同的函数,同时提取该数字的另一个数字。

  • 输入数字N。

  • 整数函数convertToFive(int N)将数字作为输入,并通过将全0替换为“ 5”来返回修改后的数字。

  • 如果数字的最后一位是“ 0”,则将值替换为“ 5”。

  • 返回递归函数,该函数将数字的另一位数除以“ 10”并乘以“ 10”。

  • 返回通过添加最后一个数字来提取输出的输出。

示例

def convertToFive(number):

   number += calculateAddedValue(number)

   return number

def calculateValue(number):

   result = 0

   placeValu = 1

   if (number == 0):

      result += (5 * placeValue)

   while (number > 0):

      if (number % 10 == 0):

         result += (5 * placeValue)

      number //= 10

      placeValue *= 10

   return result

print(covertToFive(14006))

输出结果

运行上面的代码将生成如下输出:

14556

由于给定数字中有两个0,因此替换数字14006后,它将变为14556。

以上是 用Python编写程序,将给定数字中的所有0替换为5 的全部内容, 来源链接: utcz.com/z/342707.html

回到顶部