हमें एक फ़ंक्शन लिखना है जो एक संख्या लेता है और इसके अंक को तब तक जोड़ता रहता है जब तक कि परिणाम एक अंक की संख्या न हो, जब हमारे पास एक अंक की संख्या होती है, तो हम इसे वापस कर देते हैं।
इसके लिए कोड बहुत सीधा है, हम एक पुनरावर्ती फ़ंक्शन लिखते हैं जो अंक जोड़ता रहता है जब तक कि संख्या 9 से अधिक या -9 से कम न हो (हम अलग से संकेत का ध्यान रखेंगे ताकि हमें तर्क को दो बार लिखना न पड़े)पी>
उदाहरण
const sumRecursively = (n, isNegative = n < 0) => { n = Math.abs(n); if(n > 9){ return sumRecursively(parseInt(String(n).split("").reduce((acc,val) => { return acc + +val; }, 0)), isNegative); } return !isNegative ? n : n*-1; }; console.log(sumRecursively(88)); console.log(sumRecursively(18)); console.log(sumRecursively(-345)); console.log(sumRecursively(6565));
आउटपुट
कंसोल में आउटपुट होगा -
7 9 -3 4