GV

GeezerVison

The World Wide Web, restored to 800 pixels of glory.

Home|About|Gaming cabinet|Archives|How it works|Starter sites

On this site

  • CODESCRACKER
  • Python
  • Java
  • C++
  • JavaScript
  • SQL
  • Quiz
  • C
  • C#
  • HTML
  • CSS
  • PHP
  • Networking
  • Operating System

This view

  • Original page
  • New address

GeezerVison is showing codescracker.com — C++ program to check if a given number is a prime number or not

  • C++ Programming Examples
  • C++ Programming Examples
  • C++: Hello World
  • C++: Get Input
  • C++: Print Integer
  • C++: Add two numbers
  • C++: Add, Sub, Multiply, Div
  • C++: Add Digits
  • C++: Find Average and Percentage
  • C++: Find Arithmetic Mean
  • C++: Sum of n Natural Numbers
  • C++: Sum of n Numbers
  • C++: Square's Area and Perimeter
  • C++: Rectangle's Area and Perimeter
  • C++: Triangle's Area and Perimeter
  • C++: Area and Circumference
  • C++: Find Simple Interest
  • C++: Fahrenheit to Celsius
  • C++: Celsius to Fahrenheit
  • C++: Print Prime Numbers
  • C++: Reverse a Number
  • C++: Swap Two Numbers
  • C++: Print Multiplication Table
  • C++: Find Factorial of a Number
  • C++: Find Factors of a Number
  • C++: Find HCF and LCM
  • C++: Create a Calculator
  • C++: Count Digits in a Number
  • C++: First and Last Digit Sum
  • C++: Product of Number Digits
  • C++: Sum of Squares of Digits
  • C++: Interchange Digits of Number
  • C++ if-else Programs
  • C++: Check Even or Odd
  • C++: Check Prime or Not
  • C++: Check Alphabet or Not
  • C++: Check Vowel or Not
  • C++: Check Leap Year or Not
  • C++: Check Reverse equals Original
  • C++: Check Perfect Number
  • C++: Check Palindrome or Not
  • C++: Check Armstrong or Not
  • C++: Divisibility Test
  • C++: Find Labor Wage
  • C++: Find Discounted Price
  • C++: Find Shipping Charge
  • C++: Find Telephone Bills
  • C++: Calculate Student Grade
  • C++: Largest of Two Numbers
  • C++: Largest of Three Numbers
  • C++ Number Conversion
  • C++: Decimal to Binary
  • C++: Decimal to Octal
  • C++: Decimal to Hexadecimal
  • C++: Binary to Decimal
  • C++: Binary to Octal
  • C++: Binary to Hexadecimal
  • C++: Octal to Decimal
  • C++: Octal to Binary
  • C++: Octal to Hexadecimal
  • C++: Hexadecimal to Decimal
  • C++: Hexadecimal to Binary
  • C++: Hexadecimal to Octal
  • C++ Pattern Programs
  • C++: Pattern Programs
  • C++: Print Diamond Pattern
  • C++: Print Floyd's Triangle
  • C++: Print Pascal's Triangle
  • C++ Array Programs
  • C++: 1D Array Program
  • C++: Linear Search
  • C++: Binary Search
  • C++: Largest Element in an Array
  • C++: Smallest Element in an Array
  • C++: Find Second Largest Element
  • C++: Find Second Smallest Element
  • C++: Sum of All Elements
  • C++: Multiply All Elements
  • C++: Element in Even Position
  • C++: Element in Odd Position
  • C++: Print Even Numbers in Array
  • C++: Print Odd Numbers in Array
  • C++: Count Even or Odd Numbers
  • C++: Sum of Even or Odd Numbers
  • C++: Count Positive, Negative, Zero
  • C++: Reverse an Array
  • C++: Insert an Element
  • C++: Delete an Element
  • C++: Merge two Arrays
  • C++: Bubble Sort
  • C++: Selection Sort
  • C++: Insertion Sort
  • C++: Common Elements
  • C++: 2D Array Programs
  • C++: Add Two Matrices
  • C++: Subtract Two Matrices
  • C++: Transpose Matrix
  • C++: Multiply Two Matrices
  • C++: 3D Array Programs
  • C++ String Programs
  • C++: Print String
  • C++: Find String Length
  • C++: Compare Two Strings
  • C++: Copy String
  • C++: String Concatenation
  • C++: Reverse a String
  • C++: Delete Vowels from a String
  • C++: Delete a Word from a String
  • C++: Count Characters in a String
  • C++: Count Words in a String
  • C++: Frequency of Words
  • C++: Remove Spaces from Strings
  • C++: Sort a String
  • C++: Uppercase to Lowercase
  • C++: Lowercase to Uppercase
  • C++: Swap Two Strings
  • C++: Check the Anagram or Not
  • C++: Capitalize All Words in a String
  • C++: Get Numbers from a String
  • C++ File Programs
  • C++: Read a File
  • C++: Write Content to a File
  • C++: Append Data to a File
  • C++: Read and Display File
  • C++: Copy a File
  • C++: Merge Two Files
  • Count Characters in a File
  • C++: Capitalize Every Word
  • C++: List Files in Directory
  • C++: Delete a File
  • C++: Encrypt and Decrypt a File
  • C++ Misc Programs
  • C++: Print ASCII Value
  • C++: Add Binary Numbers
  • C++: Generate Random Numbers
  • C++: Print a Smiling Face
  • C++: Days into Years and Months
  • C++: Add Two Numbers using Pointer
  • C++: Print Fibonacci Series
  • C++: Generate Armstrong Numbers
  • C++: Find nCr and nPr
  • C++: Get IP Address
  • C++: Print Date and Time
  • C++: Shutdown and Restart Computer
  • C++ Programming Tutorial
  • C++ Tutorial

C++ program to check if a given number is a prime number or not

In this article, you will learn and get code on checking whether a given number, given by the user at run-time, is a prime number or not in C++. The program is created in the following ways:

  • Check if a number is prime or not without using a function or a class
  • Check if a number is prime or not using a user-defined function
  • Using class and object, determine whether a number is a prime number

What is a prime number?

A prime number is a number that can only be divisible by 1 and the number itself. That is, if a number has no factors except 1 and the number itself, then it is called a prime number. For example, 13, 7, 17, 19, 23, etc.

Examine the prime number in C++

To check whether the number is a prime number or not in C++ programming, you have to ask the user to enter a number first, and then check and print as shown in the program given below:

If a number, n, is divisible by any number from 2 to one less than the number (n-1), then it is not prime; otherwise, it is a prime number.

#include<iostream>
using namespace std;
int main()
{
    int num, i, chk=0;
    cout<<"Enter a Number: ";
    cin>>num;
    for(i=2; i<num; i++)
    {
        if(num%i==0)
        {
            chk++;
            break;
        }
    }
    if(chk==0)
        cout<<"\nIt is a Prime Number";
    else
        cout<<"\nIt is not a Prime Number";
    cout<<endl;
    return 0;
}

This program was built and runs under the Code::Blocks IDE. Here is its sample run:

C++ program check prime number

Now supply any number as input, say 13, and press the ENTER key to check whether it is a prime or not, as shown here:

prime number program c++ programming

The dry run of the above program (with user input 13) goes like this:

  • Initially chk=0 and num=13 (the user entered 13).
  • Inside the for loop, the initialization part executes first and only once. Therefore i=2
  • Checks whether the value of i is less than the value of num or not.
  • The condition evaluates to be true because 2 (the value of i) is less than 13 (the value of num), therefore program flow goes inside the loop.
  • Inside the loop, there is an if statement that checks whether the value of num is divisible by the current value of i or not.
  • Note: If the value of i ever divides num, just increment the value of count and exit the loop using the break keyword.
  • Because 13 is not divisible by 2, the condition evaluates to be false, therefore program flow doesn't go inside the if's body.
  • Now the program flow goes to the update part of the for loop and increments the value of i. Now i=3. Checks for the condition again to see if i<num or 3<13 evaluates to true or false.
  • Condition again evaluates to be true, therefore program flow again goes inside the loop.
  • In this manner, each time you enter the loop, check whether the num's value is divisible by the i's value.
  • Continue the process until the condition of the for loop evaluates to be false.
  • After exiting from the loop, check for the value of chk and print the message.
  • That is, if chk holds its initial value (0), then the given number is a prime number, otherwise it is not a prime number.

In C++, use a function to check the prime number

Now let's create the same-purpose program using a user-defined function called checkPrimeNumber(). It takes the number entered by the user as an argument and returns a value. Initialize its return value to a variable, say chk, so check its value and print the message accordingly.

#include<iostream>
using namespace std;
int checkPrimeNumber(int);
int main()
{
    int num, chk;
    cout<<"Enter a Number: ";
    cin>>num;
    chk = checkPrimeNumber(num);
    if(chk==0)
        cout<<"\nIt is a Prime Number";
    else
        cout<<"\nIt is not a Prime Number";
    cout<<endl;
    return 0;
}
int checkPrimeNumber(int num)
{
    int i, chk=0;
    for(i=2; i<num; i++)
    {
        if(num%i==0)
        {
            chk++;
            return chk;
        }
    }
    return chk;
}

It will produce the same output as the previous program. Here is its sample run with user input as 16:

check prime number using function c++

You can also prefer the program given below for the same purpose as the previous one. In this program, rather than returning a value to the main() function, this program checks and prints directly from inside the function:

#include<iostream>
using namespace std;
void checkPrimeNumber(int);
int main()
{
    int num;
    cout<<"Enter a Number: ";
    cin>>num;
    checkPrimeNumber(num);
    cout<<endl;
    return 0;
}
void checkPrimeNumber(int num)
{
    int i, chk=0;
    for(i=2; i<num; i++)
    {
        if(num%i==0)
        {
            chk++;
            break;
        }
    }
    if(chk==0)
        cout<<"\nIt is a Prime Number";
    else
        cout<<"\nIt is not a Prime Number";
}

In C++, check the prime number using the class

This is the last program that uses classes and objects to check for the prime number. The question is: write a program in C++ to check whether an input number is a prime number or not using classes. Here is its answer:

#include<iostream>
using namespace std;
class CodesCracker
{
    private:
        int num, i, chk;
    public:
        int getData();
        int checkPrimeNumber(int);
};
int CodesCracker::getData()
{
    cout<<"Enter a Number: ";
    cin>>num;
    return num;
}
int CodesCracker::checkPrimeNumber(int num)
{
    int i, chk=0;
    for(i=2; i<num; i++)
    {
        if(num%i==0)
        {
            chk++;
            return chk;
        }
    }
    return chk;
}
int main()
{
    CodesCracker c;
    int num, chk=0;
    num = c.getData();
    chk = c.checkPrimeNumber(num);
    if(chk==0)
        cout<<"\nIt is a Prime Number";
    else
        cout<<"\nIt is not a Prime Number";
    cout<<endl;
    return 0;
}

The brief explanation of the above code is:

  • A CodesCracker (class) object c is created.
  • Using this object, we have called the function getData() of the class CodesCracker.
  • and its return value gets initialized to num inside the main() function.
  • Because the getdata() function receives a value from the user and returns it, the number entered by the user is basically initialized to num.
  • Now we've passed num to checkPrimeNumber() function. This function checks whether it is a prime or not. It returns 0 (if num is a prime number) or 1 (if num is a composite number), and its return value gets initialized to chk inside the main() function.
  • Finally, we have checked the value of chk and printed the message.

The same program in different languages

  • C Check Prime or Not
  • Java Check Prime or Not
  • Python Check Prime or Not

C++ Quiz


« Previous Program Next Program »
Practice Quizzes

Test your programming and computer science knowledge with interactive MCQs and topic-based quizzes.

All Quizzes SQL Quiz Python Quiz Java Quiz C++ Quiz
Popular Topics

Explore the most popular programming and computer science tutorials on CodesCracker.

Python Tutorial Java Tutorial C++ Tutorial SQL Tutorial JavaScript Tutorial HTML Tutorial CSS Tutorial Computer Networking
You are visitor 01402503 — GeezerVison does not store the pages you look up.
Best viewed with Netscape Navigator 4.7 or Internet Explorer 6 at 800×600. No cookies required.