查找特殊类型的数字 - JavaScript


在十进制数系中,所有实数可以分为两组——

  • 有理数
  • 无理数

对于本问题,我们只讨论有理数,

所有可以以 p/q(其中 q !== 0)形式写出的数都称为有理数。

例如 14、4.6、3.33333... 等

有理数又可以分为两组——

  • 有限小数
  • 无限循环小数

此分类是根据将 p 除以 q 的结果进行的。

对此分类的经验法则是——

  • 当且仅当 q 的质因数只有 2 和 5 时,我们才会获得有限小数。
  • 当 q 的质因数包括除 2 或 5 之外的任何其他数时,我们将会获得无限循环小数。

因此,我们需要编写一个 JavaScript 函数,它接收一个表示 q 值的数字。如果对于该值,我们可以获得终止小数,则我们的函数应返回 true,否则返回 false。

示例

以下是代码 −

const num = 1250;
const isTerminating = num => {
   while(num !== 1){
      if(num % 2 === 0){
         num /= 2;
      }else if(num % 5 === 0){
         num /= 5;
      }else{
         return false;
      };
   };
   return true;
};
console.log(isTerminating(num));

输出

这将在控制台中生成以下输出 −

true

更新于:30-Sep-2020

136 人查看

开启您的 职业生涯

通过完成课程获得认证

开始
广告