আমাদের এমন একটি ফাংশন লিখতে হবে যা একটি সংখ্যা নেয় এবং তার অঙ্ক যোগ করতে থাকে যতক্ষণ না ফলাফলটি এক-সংখ্যার সংখ্যা না হয়, যখন আমাদের একটি-অঙ্কের সংখ্যা থাকে, আমরা তা ফেরত দিই৷
এর জন্য কোডটি বেশ সহজবোধ্য, আমরা একটি পুনরাবৃত্ত ফাংশন লিখি যা সংখ্যাটি 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