Java- Builiding a recursion that replace even digits with zero -
hello need build recursion replace digits zero: exmaple - number 1254 1050 number 332- 330 , number 24 - 0
i started working on got pretty clueless after while
public static int replaceevendigitswithzero(int number){ if(number<1) return number; if(number%2==0 && number%10!=0){ int temp=number%10; return(number/10+replaceevendigitswithzero(number-temp)); } return(replaceevendigitswithzero(number/10)); } public static void main(string[] args) { int num1 = 1254; system.out.println(num1 + " --> " + replaceevendigitswithzero(num1)); int num2 = 332; system.out.println(num2 + " --> " + replaceevendigitswithzero(num2)); int num3 = 24; system.out.println(num3 + " --> " + replaceevendigitswithzero(num3)); int num4 = 13; system.out.println(num4 + " --> " + replaceevendigitswithzero(num4)); } }
since method looks @ last digit, should call input / 10
when input >= 10
.
you take value returned recursion, multiply 10 , add last digit back, if odd.
public static int replaceevendigitswithzero(int number) { int result = 0; if (number >= 10) result = replaceevendigitswithzero(number / 10) * 10; if (number % 2 != 0) result += number % 10; return result; }
Comments
Post a Comment