เราจำเป็นต้องเขียนฟังก์ชัน JavaScript ที่ใช้จำนวนเต็มบวกและคืนค่าการคงอยู่ของการบวก
การคงอยู่ของการบวกของจำนวนเต็ม กล่าวคือ n คือจำนวนครั้งที่เราต้องแทนที่ตัวเลขนั้นด้วยผลรวมของหลักจนกระทั่งตัวเลขนั้นกลายเป็นจำนวนเต็มหลักเดียว
ตัวอย่างเช่น หากตัวเลขคือ −
1679583
จากนั้น
1 + 6 + 7 + 9 + 5 + 8 + 3 = 39 // 1 Pass 3 + 9 = 12 // 2 Pass 1 + 2 = 3 // 3 Pass
ดังนั้นผลลัพธ์ควรเป็น 3
ตัวอย่าง
รหัสสำหรับสิ่งนี้จะเป็น −
const num = 1679583; const sumDigit = (num, sum = 0) => { if(num){ return sumDigit(Math.floor(num / 10), sum + num % 10); }; return sum; }; const persistence = num => { num = Math.abs(num); let res = 0; while(num > 9){ num = sumDigit(num); res++; }; return res; }; console.log(persistence(num));
ผลลัพธ์
ผลลัพธ์ในคอนโซลจะเป็น -
3