# Replace all ‘0’ with ‘5’ in an input Integer

Given a integer as a input and replace all the ‘0’ with ‘5’ in the integer.
Examples:

```    102 - 152
1020 - 1525 ```

Use of array to store all digits is not allowed.

## Recommended: Please solve it on “PRACTICE” first, before moving on to the solution.

The idea is simple, we get the last digit using mod operator ‘%’. If the digit is 0, we replace it with 5, otherwise keep it as it is. Then we recur for remaining digits.

Following is the implementation of the above idea.

## C++

 `// C++ program to replace all ‘0’ ` `// with ‘5’ in an input Integer ` `#include ` `using` `namespace` `std; ` ` `  `// A recursive function to replace all 0s ` `// with 5s in an input number It doesn't  ` `// work if input number itself is 0. ` `int` `convert0To5Rec(``int` `num) ` `{ ` `    ``// Base case for recursion termination ` `    ``if` `(num == 0) ` `        ``return` `0; ` ` `  `    ``// Extraxt the last digit and  ` `    ``// change it if needed ` `    ``int` `digit = num % 10; ` `    ``if` `(digit == 0) ` `        ``digit = 5; ` ` `  `    ``// Convert remaining digits and  ` `    ``// append the last digit ` `    ``return` `convert0To5Rec(num/10) *  ` `                       ``10 + digit; ` `} ` ` `  `// It handles 0 and calls convert0To5Rec()  ` `// for other numbers ` `int` `convert0To5(``int` `num) ` `{ ` `    ``if` `(num == 0) ` `    ``return` `5; ` `    ``else` `return` `convert0To5Rec(num); ` `} ` ` `  `// Driver code ` `int` `main() ` `{ ` `    ``int` `num = 10120; ` `    ``cout << convert0To5(num); ` `    ``return` `0; ` `} ` ` `  `// This code is contributed by Code_Mech.  `

## C

 `// C program to replace all ‘0’ with ‘5’ in an input Integer ` `#include ` ` `  `// A recursive function to replace all 0s with 5s in an input number ` `// It doesn't work if input number itself is 0. ` `int` `convert0To5Rec(``int` `num) ` `{ ` `    ``// Base case for recursion termination ` `    ``if` `(num == 0) ` `        ``return` `0; ` ` `  `    ``// Extraxt the last digit and change it if needed ` `    ``int` `digit = num % 10; ` `    ``if` `(digit == 0) ` `        ``digit = 5; ` ` `  `    ``// Convert remaining digits and append the last digit ` `    ``return` `convert0To5Rec(num/10) * 10 + digit; ` `} ` ` `  `// It handles 0 and calls convert0To5Rec() for other numbers ` `int` `convert0To5(``int` `num) ` `{ ` `    ``if` `(num == 0) ` `       ``return` `5; ` `    ``else` `return`  `convert0To5Rec(num); ` `} ` ` `  `// Driver program to test above function ` `int` `main() ` `{ ` `    ``int` `num = 10120; ` `    ``printf``(``"%d"``, convert0To5(num)); ` `    ``return` `0; ` `}`

## Java

 `// Java code for Replace all 0 with 5 in an input Integer ` `class` `GFG { ` `     `  `    ``// A recursive function to replace all 0s with 5s in  ` `    ``// an input number. It doesn't work if input number  ` `    ``// itself is 0. ` `    ``static` `int` `convert0To5Rec(``int` `num) ` `    ``{ ` `        ``// Base case ` `        ``if` `(num == ``0``) ` `            ``return` `0``; ` `         `  `        ``// Extraxt the last digit and change it if needed ` `        ``int` `digit = num % ``10``;  ` `        ``if` `(digit == ``0``) ` `            ``digit = ``5``; ` ` `  `        ``// Convert remaining digits and append the  ` `        ``// last digit ` `        ``return` `convert0To5Rec(num / ``10``) * ``10` `+ digit; ` `    ``} ` ` `  `    ``// It handles 0 and calls convert0To5Rec() for ` `    ``// other numbers ` `    ``static` `int` `convert0To5(``int` `num) ` `    ``{ ` `        ``if` `(num == ``0``) ` `            ``return` `5``; ` `        ``else` `            ``return` `convert0To5Rec(num); ` `    ``} ` ` `  `    ``// Driver function ` `    ``public` `static` `void` `main(String[] args) ` `    ``{ ` `        ``System.out.println(convert0To5(``10120``)); ` `    ``} ` `} ` ` `  `// This code is contributed by Kamal Rawal `

## Python

 `# Python program to replace all 0 with 5 in given integer ` ` `  `# A recursive function to replace all 0s with 5s in an integer ` `# Does'nt work if the given number is 0 itself ` `def` `convert0to5rec(num): ` ` `  `    ``# Base case for recurssion termination ` `    ``if` `num ``=``=` `0``: ` `        ``return` `0` ` `  `    ``# Extract the last digit and change it if needed ` `    ``digit ``=` `num ``%` `10` ` `  `    ``if` `digit ``=``=` `0``: ` `        ``digit ``=` `5` ` `  `    ``# Convert remaining digits and append the last digit ` `    ``return` `convert0to5rec(num``/``10``) ``*` `10` `+` `digit ` ` `  `# It handles 0 to 5 calls convert0to5rec() for other numbers ` `def` `convert0to5(num): ` `    ``if` `num ``=``=` `0``: ` `        ``return` `5` `    ``else``: ` `        ``return` `convert0to5rec(num) ` ` `  ` `  `# Driver Program ` `num ``=` `10120` `print` `convert0to5(num) ` ` `  `# Contributed by Harshit Agrawal `

## C#

 `// C# code for Replace all 0  ` `// with 5 in an input Integer  ` `using` `System; ` ` `  `class` `GFG  ` `{  ` ` `  `// A recursive function to replace  ` `// all 0s with 5s in an input number. ` `// It doesn't work if input number  ` `// itself is 0.  ` `static` `int` `convert0To5Rec(``int` `num)  ` `{  ` `    ``// Base case  ` `    ``if` `(num == 0)  ` `        ``return` `0;  ` `     `  `    ``// Extraxt the last digit and ` `    ``// change it if needed  ` `    ``int` `digit = num % 10;  ` `    ``if` `(digit == 0)  ` `        ``digit = 5;  ` ` `  `    ``// Convert remaining digits  ` `    ``// and append the last digit  ` `    ``return` `convert0To5Rec(num / 10) * 10 + digit;  ` `}  ` ` `  `// It handles 0 and calls  ` `// convert0To5Rec() for other numbers  ` `static` `int` `convert0To5(``int` `num)  ` `{  ` `    ``if` `(num == 0)  ` `        ``return` `5;  ` `    ``else` `        ``return` `convert0To5Rec(num);  ` `}  ` ` `  `// Driver Code  ` `static` `public` `void` `Main () ` `{ ` `    ``Console.Write(convert0To5(10120));  ` `}  ` `}  ` ` `  `// This code is contributed by Raj `

## PHP

 ` `

Output:

`15125`

My Personal Notes arrow_drop_up

Article Tags :
Practice Tags :

1

Please write to us at contribute@geeksforgeeks.org to report any issue with the above content.