HackerRank Prime Checker problem solution in java YASH PAL, 31 July 2024 In this HackerRank Prime Checker problem in java programming language You are given a class Solution and its main method in the editor. Your task is to create a class Prime. The class Prime should contain a single method checkPrime. You should write the checkPrime method in such a way that the code prints only the prime numbers. HackerRank Prime Checker problem solution in java programming. import java.io.*; import java.util.*; import java.text.*; import java.math.*; import java.util.regex.*; import java.lang.reflect.*; import static java.lang.System.in; class Prime { void checkPrime(int... numbers) { for (int num : numbers) { if (isPrime(num)) { System.out.print(num + " "); } } System.out.println(); } boolean isPrime(int n) { if (n < 2) { return false; } else if (n == 2) { return true; } else if (n % 2 == 0) { return false; } int sqrt = (int) Math.sqrt(n); for (int i = 3; i <= sqrt; i += 2) { if (n % i == 0) { return false; } } return true; } } public class Solution { public static void main(String[] args) { try{ BufferedReader br=new BufferedReader(new InputStreamReader(in)); int n1=Integer.parseInt(br.readLine()); int n2=Integer.parseInt(br.readLine()); int n3=Integer.parseInt(br.readLine()); int n4=Integer.parseInt(br.readLine()); int n5=Integer.parseInt(br.readLine()); Prime ob=new Prime(); ob.checkPrime(n1); ob.checkPrime(n1,n2); ob.checkPrime(n1,n2,n3); ob.checkPrime(n1,n2,n3,n4,n5); Method[] methods=Prime.class.getDeclaredMethods(); Set<String> set=new HashSet<>(); boolean overload=false; for(int i=0;i<methods.length;i++) { if(set.contains(methods[i].getName())) { overload=true; break; } set.add(methods[i].getName()); } if(overload) { throw new Exception("Overloading not allowed"); } } catch(Exception e) { System.out.println(e); } } } The solution in Java 8 programming. import java.io.*; import java.util.*; import java.text.*; import java.math.*; import java.util.regex.*; import java.lang.reflect.*; import static java.lang.System.*; class Prime { static void checkPrime(int...arr) { for (int i = 0; i < arr.length; i++) { boolean flag = false; for (int j = 2; j <= Math.sqrt(arr[i]); j++) { if (arr[i] % j == 0) { flag = true; break; } } if (arr[i] > 1 && (!flag || arr[i] == 2)) { System.out.print(arr[i] + " "); } } System.out.println(); } } public class Solution { public static void main(String[] args) { try{ BufferedReader br=new BufferedReader(new InputStreamReader(in)); int n1=Integer.parseInt(br.readLine()); int n2=Integer.parseInt(br.readLine()); int n3=Integer.parseInt(br.readLine()); int n4=Integer.parseInt(br.readLine()); int n5=Integer.parseInt(br.readLine()); Prime ob=new Prime(); ob.checkPrime(n1); ob.checkPrime(n1,n2); ob.checkPrime(n1,n2,n3); ob.checkPrime(n1,n2,n3,n4,n5); Method[] methods=Prime.class.getDeclaredMethods(); Set<String> set=new HashSet<>(); boolean overload=false; for(int i=0;i<methods.length;i++) { if(set.contains(methods[i].getName())) { overload=true; break; } set.add(methods[i].getName()); } if(overload) { throw new Exception("Overloading not allowed"); } } catch(Exception e) { System.out.println(e); } } } coding problems hackerrank solutions java