DEV Community

Discussion on: Project Euler #3 - Largest Prime Factor

Collapse
 
xbrewyn profile image
XBrewyn • Edited

Author: Brewyn
Largest Prime Factor

Javascript

const isPrime = ( value ) => {
  for( let i = 2; i < value; i++ )
    if( value % i === 0 )
      return false;
  return true;
};

const LargestPrimeFactor = ( value ) => {
  let result = [];  
  for( let i = 2; i < value; i++ )
    if( isPrime( i ) )
      if( value % i === 0 )
        result.push( i );
  return result;
};
console.log( LargestPrimeFactor( 600851475143 ) );

PHP


function isPrime( $value ) {
  for( $i = 2; $i < $value; $i++ )
    if( $value % $i == 0 )
      return false;
  return true;
};

function LargestPrimeFactor ( $value ) {
  $result = [];  
  for( $i = 2; $i < $value; $i++ )
    if( isPrime( $i ) )
      if( $value % $i == 0 )
        array_push( $result, $i );
  return $result; 
};

print_r( LargestPrimeFactor( 13195 ) ); 
//Array( 
//  [0] => 5 
//  [1] => 7 
//  [2] => 13 
//  [3] => 29 
//)

Python

def isPrime( value ):
  for i in range( 2, value ):
    if value % i == 0:
      return False
  return True

def LargestPrimeFactor ( value ):
  result = []
  for i in range( 2, value ):
    if isPrime( i ):
      if value % i == 0:
        result.append( i )
  return result

print( LargestPrimeFactor( 600851475143 ) ) 

Java

import java.util.Arrays;

class Main {
  public static void main(String[] args) {
    
    class LargestPrimeFactor {
      public LargestPrimeFactor( int value ) {
        System.out.println(Arrays.toString(this.LargestPrimeFactor(value)));
      }

      boolean isPrime(int value) {
        for(int i = 2; i < value; i++) {
          if(value % i == 0) {
            return false;
          }
        }
        return true;
      }
     
      int[] LargestPrimeFactor(int value) { 
        int result[] = new int[4];
        int counter = 0;
        for( int i = 2; i < value; i++ ) {
          if( this.isPrime(i) ) {
            if(value % i == 0){
              result[counter] = i;
              counter++;
            }
          }
        }

        return result;
      }
    }
    LargestPrimeFactor myObject = new LargestPrimeFactor(600851475143);
    // [ 5, 7, 13, 29 ]
  } 
}