編寫一個 Python 程式,將給定數字中的所有 0 替換為 5。
給定一個整數 N,任務是將數字中出現的所有 0 替換為 '5'。但是,以 '0' 開頭的數字不能替換為 '5',因為它保持不變。例如,
輸入-1 −
N = 1007
輸出 −
1557
解釋 − 給定數字包含 2 個零,當用 '5' 替換時,結果輸出為 1557。
輸入-2 −
N = 00105
輸出 −
155
解釋 − 由於給定數字以 '0' 開頭,可以忽略,並且在用 '5' 替換中間的 0 後,輸出結果為 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。
廣告
資料結構
網路
關係資料庫管理系統
作業系統
Java
iOS
HTML
CSS
Android
Python
C 程式設計
C++
C#
MongoDB
MySQL
Javascript
PHP