Skip to content

Instantly share code, notes, and snippets.

@JamieDixon
Last active August 29, 2015 13:58
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save JamieDixon/9974511 to your computer and use it in GitHub Desktop.
Save JamieDixon/9974511 to your computer and use it in GitHub Desktop.
function hamming (n) {
// TODO: Program me
var hammedNumbers = [];
var startIndex = 1;
while(hammedNumbers.length < n)
{
var primeFactors = calcPrimeFactors(startIndex);
var largestPrime = primeFactors[primeFactors.length - 1];
if(largestPrime == 5)
{
hammedNumbers.push(largestPrime);
}
startIndex++;
}
return hammedNumbers[hammedNumbers.length - 1];
}
function calcPrimeFactors(n)
{
var factors = [];
var d = 2;
while(n > 1)
{
while(n % 2 == 0)
{
factors.push(n);
n /= d;
}
}
return factors;
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment