Я пытаюсь написать метод (в частности, используя рекурсию), который вернет число четных цифр в натуральном числе. Я хотел бы сделать это с помощью возвращаемого типа NaturalNumber, чтобы получить более полное знакомство с ним. Может ли кто-нибудь указать мне в правильном направлении?Подсчет чисел с номером NaturalNumber
//private static NaturalNumber countEvenDigits(NaturalNumber num)
//initalize a NaturalNumber--count--to zero
//while loop with condition that the num is not 0
//initialize a NaturalNumber--k--to num.divideBy10 so that it is equal to the last digit in the natural number
//if statement-- k mod 2 is equal to 0
//increment the NaturalNumber count
//end if statement
//call this function recursively
//end while statement
//return count
Однако моя текущая реализация просто возвращает 0, о чем я думаю неправильно?
натуральное число не является стандартным классом Java. Я бы сделал это, используя int для начала. –
Просто используйте% 10, чтобы получить последнюю цифру, а затем проверьте, даже если она вернулась 1 + f (num/10). В противном случае return f (num/10) – Brendan
должен быть mod 10, а не делить на 10, если вы хотите получить последнюю цифру. 123/10 = 12, 123% 10 = 3 –