เราต้องเขียนฟังก์ชัน maximumDifference() ที่รับจำนวนบวก n และคืนค่าความต่างระหว่างตัวเลขสูงสุดและต่ำสุดที่สามารถสร้างจากตัวเลข n ได้
เช่น ถ้า n คือ 203
- ตัวเลขสูงสุดที่สร้างจากหลักได้คือ 320
- ตัวเลขต่ำสุดที่สร้างจากหลักได้คือ 23 (วางศูนย์ที่หลักหน่วย)
ความต่างจะเป็น
320-23 = 297
ดังนั้นผลลัพธ์ควรเป็น 297
มาเขียนโค้ดสำหรับฟังก์ชันนี้กัน
ตัวอย่าง
const digitDifference = num => {
const asc = +String(num).split("").sort((a, b) => {
return (+a) - (+b);
}).join("");
const des = +String(num).split("").sort((a, b) => {
return (+b) - (+a);
}).join("");
return des - asc;
};
console.log(digitDifference(203));
console.log(digitDifference(123));
console.log(digitDifference(546));
console.log(digitDifference(2354));
ผลลัพธ์
ผลลัพธ์ในคอนโซลจะเป็นดังนี้
297 198 198 3087