Estoy tratando de resolver esta pregunta->
https://www.codewars.com/kata/541c8630095125aba6000c00/train/javascript
Básicamente, el propósito de la función es:
16 --> 1 + 6 = 7
942 --> 9 + 4 + 2 = 15 --> 1 + 5 = 6
132189 --> 1 + 3 + 2 + 1 + 8 + 9 = 24 --> 2 + 4 = 6
493193 --> 4 + 9 + 3 + 1 + 9 + 3 = 29 --> 2 + 9 = 11 --> 1 + 1 = 2
Puedo obtener la respuesta correcta ("suma final") en mi console.log pero no puedo obtener ese valor en la declaración escrita.
function digital_root(n) { console.log("initial", n) let sum=0 while(n>0){ sum+= n%10 console.log("sum",sum) n= Math.floor(n/10) console.log("num",n) } if(sum>10){ digital_root(sum) } else{ console.log("final sum",sum) return sum} }Aquí está el archivo console.log->
initial 16 sum 6 num 1 sum 7 num 0 final sum 7 initial 195 sum 5 num 19 sum 14 num 1 sum 15 num 0 initial 15 sum 5 num 1 sum 6 num 0 final sum 6 initial 398754 sum 4 num 39875 sum 9 num 3987 sum 16 num 398 sum 24 num 39 sum 33 num 3 sum 36 num 0 initial 36 sum 6 num 3 sum 9 num 0 final sum 9está regresando indefinido en lugar de 6 y 9 respectivamente.
También una humilde solicitud es no sugerir una solución alternativa sino ayudarme a solucionar esta. Gracias