ปัญหา
เราสามารถตรวจดูจำนวนที่จะหารด้วย 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]