Sphenic Number | This functions finds all primes smaller than ' limit ' using simple sieve of eratosthenes . ; create a global array of size 10001 ; initialize all entries of it as true . A value in mark [ p ] will finally be false if ' p ' is Not a prime , else true . ; One by one traverse all numbers so that their multiples can be marked as composite . ; If p is not changed , then it is a prime ; Update all multiples of p ; to store the 8 divisors ; to count the number of divisor ; finally check if there re 8 divisor and all the numbers are distinct prime no return 1 else return 0 ) ; ; Driver code
function simpleSieve ( ) { let arr = Array ( 1001 ) . fill ( true ) ; for ( let p = 2 ; p * p < 1001 ; p ++ ) { if ( arr [ p ] ) { for ( let i = p * 2 ; i < 1001 ; i = i + p ) arr [ i ] = false ; } } } function find_sphene ( N ) { var arr1 = Array ( 8 ) . fill ( 0 ) ; var count = 0 ; var j = 0 ; for ( let i = 1 ; i <= N ; i ++ ) { if ( N % i == 0 && count < 8 ) { count ++ ; arr1 [ j ++ ] = i ; } } if ( count == 8 && ( arr [ arr1 [ 1 ] ] && arr [ arr1 [ 2 ] ] && arr [ arr1 [ 3 ] ] ) ) return 1 ; return 0 ; } var n = 60 ; simpleSieve ( ) ; var ans = find_sphene ( n ) ; if ( ans == 1 ) document . write ( " " ) ; else document . write ( " " ) ;