EMIRP

class Emrip {
    static boolean isPrime(int n) {
        for (int i = 2; i <= (int)Math.sqrt(n); i++)
            if (n % i == 0)
                return false;
       
        return true;
    }   

    static int reverse(int n) {
        int y = String.valueOf(n).length() - 1;
        int num = 0;
       
        while (n > 0) {
            int r = n % 10;
            num += r * (int)Math.pow(10, y--);
            n /= 10;
        }
       
        return num;
    }
   
    static boolean isPalindrome(int n) {
        if (n == reverse(n))
            return true;
        else
            return false;
    }
   
    static boolean isEmrip(int n) {
        if (isPrime(n) && !isPalindrome(n))
            if (isPrime(reverse(n)))
                return true;
       
        return false;
    }
   
    public static void main(String[] args) {
        /*for (int i = 2; i <= 200; i++) {
            if (isEmrip(i))
                System.out.print(i + " ");
        }*/
       
        System.out.printf("%s\t%s", "Prime", "Mersenne Prime");
        System.out.printf("\n%s\t%s", "-----", "--------------");   
        for (int i = 2; i <= 31; i++) {
            if (isPrime(i))
                System.out.printf("\n%d\t%d", i, (int)Math.pow(2, i) - 1);
        }
    }
}

Comments

Popular posts from this blog

Zeller's Congruence

Property Event-Delegation

Method with variable arguments