ปัญหา
เราสามารถตรวจดูจำนวนที่จะหารด้วย 7 ลงตัวได้ถ้ามันอยู่ในรูปแบบ 10a + b และ a - 2b หารด้วย 7 ลงตัว
เราทำเช่นนี้ต่อไปจนกว่าจะได้จำนวนที่หารด้วย 7 ลงตัว เราสามารถหยุดได้เมื่อตัวเลขนี้มีมากที่สุด 2 หลักเพราะเราควรทราบว่าตัวเลขไม่เกิน 2 หลักหารด้วย 7 ลงตัวหรือไม่
เราจำเป็นต้องเขียนฟังก์ชัน JavaScript ที่ใช้ตัวเลขและส่งคืนจำนวนขั้นตอนที่จำเป็นในการลดจำนวนเป็นตัวเลขสองหลักให้มากที่สุดและตัวเลขสองหลักนั้น
ป้อนข้อมูล
const num = 1603;
ผลผลิต
const output = [7, 2];
เพราะขั้นตอนคือ −
160 - 2*3 = 154 15 - 2*8 = 7
และค่าสุดท้ายคือ 7
ตัวอย่าง
ต่อไปนี้เป็นรหัส -
const num = 1603; const findSteps = (num) => { let times = 0; let result = 0; let number = String(num); while(number.length > 2){ times++; let firstNumber = Number(number.slice(-1)) const remaining = Number(number.slice(0, number.length - 1)) result = remaining - 2 * firstNumber number = String(result) } return [result, times] } console.log(findSteps(num));
ผลลัพธ์
[7, 2]