3.Largest Prime Factor

The prime factors of 13195 are 5, 7, 13 and 29.  What is the largest prime factor of the number 600851475143 ?

public class Problem3 {
     //for less number
     public void prime () {
        long i = 600851475143L ;
        for (long j=2; j<i; j++) {
          long  n = i%j;
          if (n==0) {
              i = i/j;
          }
        }
        System.out.println(i);
    }

  //for big number fast
    public void prime1 () {
        long i = 2874887440876739259L ;
        for (long j=2; j<=Math.sqrt(i); j++) {
          long  n = i%j;
          if (n==0) {
              i = i/j;
              j=1;
          }
        }
        System.out.println(i);
    }

  //for big number super fast    
    public void prime2 () {
        long i = 2874887440876739259L ;
        long j=2;
        for (j=2; j<=Math.sqrt(i); j=j+2) {
              long  n = i%j;
              if (n==0) {
                  i = i/j;
              } else {
                  if(j==2) {
                      j=1;
                  } 
              }
        }
        System.out.println(i);
    }

     public static void main(String[] args) {
        Problem3 p = new Problem3();
       start =(Calendar.getInstance()).getTimeInMillis();
        p.prime();
        end =(Calendar.getInstance()).getTimeInMillis();
        System.out.println(start + " - " + end  + " - " +(end-start) + " Time");

        start =(Calendar.getInstance()).getTimeInMillis();
        p.prime1();
        end =(Calendar.getInstance()).getTimeInMillis();
        System.out.println(start + " - " + end  + " - " +(end-start) + " Time");

        start =(Calendar.getInstance()).getTimeInMillis();
        p.prime2();
        end =(Calendar.getInstance()).getTimeInMillis();
        System.out.println(start + " - " + end  + " - " +(end-start) + " Time");
    }
}
Advertisement

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

%d bloggers like this: