Skip to content

Instantly share code, notes, and snippets.

@gabrieleromanato
Last active June 18, 2017 08:33
Show Gist options
  • Save gabrieleromanato/5463b21ca49dde73714b3b86ba721786 to your computer and use it in GitHub Desktop.
Save gabrieleromanato/5463b21ca49dde73714b3b86ba721786 to your computer and use it in GitHub Desktop.
numeri-primi
"use strict";
(function() {
const isPrimeNumber = number => {
if ( number == 1 || number == 2 ) {
return true;
}
for ( var i = 2; i < number; i++ ) {
if ( number % i == 0 ) {
return false;
}
}
return true;
};
const unique = arr => {
return arr.reduce(( p, c ) => {
if ( p.indexOf( c ) < 0 ) {
p.push( c );
}
return p;
}, []);
};
const nextPrime = number => {
var n;
if( number % 2 == 0 ) {
number++;
}
for( n = number; !isPrimeNumber( n ); n += 2 ) {
}
return n;
};
document.addEventListener( "DOMContentLoaded", () => {
let form = document.querySelector( "#prime" ),
output = document.querySelector( "#output" );
form.addEventListener( "submit", e => {
e.preventDefault();
let n = document.querySelector( "#number" ).value;
let text = [];
for( var i = 0; i < n; ++i ) {
text.push( nextPrime( i ) );
}
output.innerHTML = unique( text ).join( " " );
}, false);
});
})();
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment