查找自然数的第n个数字JavaScript
我们知道数学中的自然数是从1开始无穷大的数。
前15个自然数是-
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
因此,第一个自然数为1,第二个为2,第三个为3,依此类推。但是当我们超过9时,则第十个自然数位是10的第一个数字,即1,而第11自然数位是下一个数字,即0。
我们需要编写一个JavaScript函数,该函数接受一个数字,例如n,并找到并返回第n个自然数位。
示例
const findNthDigit = (num = 1) => {
let start = 1;
let len = 1;
let count = 9;
while(num > len * count) {
num -= len * count;
len++; count *= 10;
start *= 10;
};
start += Math.floor((num-1)/len);
let s = String(start);
return Number(s[(num-1) % len]);
};
console.log(findNthDigit(5));
console.log(findNthDigit(15));
console.log(findNthDigit(11));
console.log(findNthDigit(67));输出结果
控制台中的输出将是-
5 2 0 8
热门推荐
10 规培祝福语简短霸气
11 兄弟生日恶搞祝福语简短
12 幽默祝福语押韵简短
13 迎元旦平安祝福语简短
14 送女友鲜花祝福语简短
15 冬日问候祝福语大全简短
16 婚礼伴娘祝福语大全简短
17 婚礼酒祝福语简短大气
18 婚礼祝福语简短朴实大众