Các con số lộn ngược
Các số vẫn giữ nguyên khi chúng được xoay 180 độ được gọi là số lộn ngược.
Ví dụ:9116, 69.
Vấn đề
Chúng tôi được yêu cầu viết một hàm JavaScript nhận trong một mảng phạm vi gồm hai số. Hàm của chúng ta sẽ trả về tổng số tất cả các số lộn ngược nằm trong phạm vi được chỉ định.
Ví dụ
Sau đây là mã -
const range = [5, 125]; const flipNum = (number) => { const upsideDownDigits = [0, 1, -99, -99, -99, -99, 9, -99, 8, 6]; let reverseNumArr = String(number) .split('') .map(val => Number(val)) .reverse(); let flipDigitsNumArr = reverseNumArr.map(val => upsideDownDigits[val]); if (flipDigitsNumArr.includes(-99)) { return false; } let flipDigitsNum = Number( flipDigitsNumArr.reduce((accum, curr) => accum + String(curr)) ); return flipDigitsNum === number; }; const countUpsideDown = ([lowNum, highNum]) => { let uDNums = 0; for (let counter = lowNum; counter <= highNum; counter++) { uDNums += flipNum(counter) === true; } return uDNums; }; console.log(countUpsideDown(range));
Đầu ra
7