# Test whether a number is prime

**Test whether a number is prime**

**Problem Definition:** To verify whether an integer is prime or not.

**Problem Analysis:** Prime number is an integer which is exactly divisible by 1 and itself.

For example, 17 is a prime number because 1 and 17 are the only two factors of 17.

Generalizing this, a positive integer with just two factors is a prime number.

Examples of prime numbers are 2, 3, 5, 7, 11, 13, ......

To verify whether a number (say) is prime or not, divide the number by 2 to n 1.

If the remainder is zero in any of the cases, then the number is not prime (such numbers are called composite).

Mathematically, it is also enough to divide the number from 2 to √n

Solving by Example: Let us take two numbers 37 and 49.

Consider 37 first. The square root of 37 is 6 (approximately).

Now, divide 37 by 2, 3, 4, 5 and 6.

None of the division operation gives a remainder of zero.

Hence, 37 is a prime number. Now, let us consider 49.

The square root of 49 is 7.So let us divide 49 by 2, 3, 4, 5, 6 and 7.

As 49 is divisible by 7, it is not a prime numbers.

**Algorithm Definition**

Step 1: Start

Step 2: Read the number n which we want to verify whether prime or not.

Step 3: Initialize the value of the divisor i as.

Step 4: Repeat the following steps till i less than or equal to square root of n. or the remainder of the division operation is zero.

(i) Divide n by i

(ii) if remainders is zero, then prints the number is not prime and exit the process.

Step 5: If none of the remainders are zero, print n is a prime number.

Step 6: Stop

**Question. What is algorithm? Write the characteristics of an algorithm. Give an example for algorithm. **

**Answer :**

**Definition of Algorithm**

Algorithm is a step by step solution to a given problem. Sequence of steps written in order to carry out some particular task. Each step of an algorithm is written in english.

Various characteristics of an algorithm are

- The algorithm must have definite start and end.
- An algorithm may accept zero or more inputs
- An algorithm must produce at least one output
- The steps of an algorithm must be simple, easy to understand and unambiguous.
- Each step must be precise and accurate.
- The algorithm must contain finite number of steps.

**Example:**

**Algorithm 1: Algorithm for finding of area of triangle**

Step 1: start

Step 2: Read base and height of traingle

Step 3: Calulate area of traingle

Step 4: print area of traingle

Step 5: stop

**Algorithm 2: Algorithm for finding of sum and average of given three numbers**

Step 1: start

Step 2: Read three numbers i.e. A, B and C

Step 3: find sum of three numbers i.e. sum=A+B+C

Step 4: find average of three numbers i.e. average=sum/3

Step 4: print sum and average

Step 5: stop

**Question : What is pseudocode? Give an example for pseudocode. **

**Answer:**

**Definition of Pseudocode**

Pseudocode is high level description of an algorithm that contains a sequence of steps written in combination of english and mathematical notations to solve a given problem.

Pseudocode is part english and part program logic. Pseudocodes are better than algorithm since it contains ordered steps and mathematical notations they are more closer to the statements of programming language.

This is essentially an intermediate-step towards the development of the actual code(program). Although pseudo code is frequently used, there are no set of rules for its exact writing.

**Example:**

**Pseudocode 1: Pseudocode for finding area of traingle**

Pseudocode Area_of_Traingle

BEGIN

READ base and Height

CALCULATE Area_of_Triangle=(base*height)/2

PRINT Area_of_Triangle

END

**Pseudocode 2:Pseudocode for finding sum and average of three numbers**

Pseudocode SUM_AVG

BEGIN

READ A, B, and C

CALCULATE sum=A+B+C

CALCULATE average=SUM/3

PRINT sum and average

END

**Question : What is flowchart? List and define the purpose of symbols used to
represent flowchart. Give an example for flowchart.**

**Answer :**

**Definition of flowchart**

Flowchart is a graphical or pictorial representation of an algorithm. Its a program "design tool in which standard graphical symbols are used to represent the logical flow of data through a function.

Flowchart is a combination of symbols. They show start and end points, the order and sequence of actions, and how one part of a flowchart is connected to another.

**Example:**

**Finding the area of triangle **