freeCodeCamp/guide/chinese/certifications/coding-interview-prep/project-euler/problem-3-largest-prime-factor/index.md

929 B
Raw Blame History

title localeTitle
Largest prime factor 最大的素因子

问题3最大的素因子

方法:

  • 为了找到一个数字的最大素数因子我们从最小的素数因子2开始并用它来除数。
  • 如果余数为0表示该数字可以被该素数整除我们将数字除以相同的素数直到该数字不再被该素数整除。
  • 之后我们将素因子增加1并重复此过程直到数字变为1。

解:

function largestPrimeFactor(number) { 
  let prime = 2, max = 1; 
  while (prime <= number){ 
    if (number % prime == 0) { 
      max = prime; 
      number = number/prime; 
    } 
    else prime++; //Only increment the prime number if the number isn't divisible by it 
  } 
  return max; 
 } 

资源: