js检测知识题总汇

279 阅读1分钟

算法编程题

题目:从数列中区间为q到z区间中找到能整除3的个数

详细内容:数列规则如下:1,12,123,...,12345678910,123457891011,...。找到能否被3整除的个数。

解题方向:

当前数列规则是,数列中的前一个数列中最后一个数字+1的值组成后一个数列。

 //参数:参数1:区间1,参数2:区间2
   function testNumber(p, z) {
     //区间中能被3整数的个数
   let addNum = 0;
     //判断当前区间有无错序
     if (Number(p) <= Number(z)) {
       var firstNum = Number(p)
       var lastNum = Number(z)
     } else {
       var firstNum = Number(z)
       var lastNum = Number(p)
     }
     //获取开始区间的初始值
     function startNumber(num) {
       var totalNum = 0
       for (let i = 1; i < num; i++) {
         totalNum += i
       }
       return totalNum
     }
     //获取值
     let  oneNum = startNumber(firstNum);
     for (let i = firstNum; i <= lastNum; i++) {
       oneNum = oneNum + i
       if (oneNum % 3 === 0) {
         addNum++
       }
     }
     return addNum;
   }
   console.log(testNumber(2, 5)) //3