Primality Test | CodeChef Solution

Hello coders, today we are going to solve Primality Test CodeChef Solution whose Problem Code is PRB01.

Primality Test

Task

Alice and Bob are meeting after a long time. As usual they love to play some math games. This times Alice takes the call and decides the game. The game is very simple, Alice says out an integer and Bob has to say whether the number is prime or not. Bob as usual knows the logic but since Alice doesn’t give Bob much time to think, so Bob decides to write a computer program.

Help Bob accomplish this task by writing a computer program which will calculate whether the number is prime or not .

Input Format

The first line of the input contains an integer T, the number of testcases. T lines follow.

Each of the next T lines contains an integer N which has to be tested for primality.

Output Format

For each test case output in a separate line, “yes” if the number is prime else “no.”

Constraints

  •  T  20
  •  N  100000

Sample Input

5
23
13
20
1000
99991

Sample Output

yes
yes
no
no
yes

Solution – Primality Test | CodeChef Solution

C++

#include <iostream>
using namespace std;

int main() {
	int t;
	cin>>t;
	while(t--){
           int n , c = 0;
           cin>>n;

           for(int i = 1 ; i <= n; i++){
            if(n/i != 0 && n%i == 0){
                c++;
            }
           }
           if(c == 2){
            cout<<"yes"<<endl;
           }
           else{
            cout<<"no"<<endl;
           }
	}
	return 0;
}

Python

#Solution Provided by Sloth Coders
T = int(input())
for i in range(T):
    num = int(input())
    l = 0
    for j in range (1, num + 1):
        if (num % j == 0):
            l = l + 1
    if (l == 2):
        print("yes")
    else:
        print("no")

Java

import java.util.Scanner;

public class Main {
    public static void main(String[] args)  {
        Scanner sc = new Scanner(System.in);
        int t = sc.nextInt();
        while(t-- > 0) {
            boolean prime = true;
            int n = sc.nextInt();
            if(n == 1){
                System.out.println("no");
                continue;
            }
            if(n == 2){
                System.out.println("yes");
                continue;
            }
            for(int i=2; i<=n/2+1; i++) {
                if(n%i == 0) {
                    System.out.println("no");
                    prime = false;
                    break;
                }
            }
            if(prime == true) {
                System.out.println("yes");
            }
        }
        sc.close();
    }
}

Disclaimer: The above Problem (Primality Test) is generated by CodeChef but the Solution is Provided by CodingBroz. This tutorial is only for Educational and Learning Purpose.

Leave a Comment

Your email address will not be published. Required fields are marked *