使用 JavaScript 查找范围内倒置数字的总数
颠倒的数字
旋转180度后保持不变的数字称为颠倒数字。
例如,9116、69。
问题
我们需要编写一个JavaScript函数,该函数接受两个数字的范围数组。我们的函数应该返回落在指定范围内的所有倒置数字的计数。
示例
以下是代码-
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));输出结果7
热门推荐
10 诗词送行祝福语大全简短
11 新房开工吉日祝福语简短
12 50多岁生日简短祝福语
13 安徽疫情祝福语简短英语
14 农民朋友发财祝福语简短
15 对生活祝福语简短精辟
16 搬家词简短祝福语朋友
17 女神结婚快乐祝福语简短
18 文学短句祝福语大全简短