To understand better please read the following post first, it will clear your concept of prime number What is prime number and Why 1 is not a prime number?

#include<stdio.h> int main(){ int n, i,check; printf("Enter a positive number\n"); scanf("%d",&n); for(i=2;i<=n/2;i++){ if(n%i==0) { check = 1; break; } } if(check==1) printf("\n%d is not a prime number\n",n); else printf("\n%d is a prime number\n",n); return 0; }

**Logic:** The above program takes an integer **n** to check whether it is prime and use two control variables **i** & **check** Since every number is divisible by 1 so we started from ** i = 2**. And

**i**will be up to

**n/2. Why n/2 and why not n**Because if we divide

**n,**by any number between

**n/2**and

**n**it will give us a remainder. For example if we divide 12 by 7(12÷2 < 7) it will remain 5, in case of 9 it will remain 3. That makes

**if(n%i==0)**false every time. So if we take

**n**it just increase time complexity.

Then we divide **n** with 2 to **n/2** if it divide without any remainder, we set **check = 1** And show it as not a prime.

### Another one

#include<stdio.h> int main(){ int min, max, i,count; printf("Enter the first end point\n"); scanf("%d",&min); printf("Enter the second end point\n"); scanf("%d",&max); printf("\n\n"); for(i=min;i<=max;i++){ for(count=2;count<=i;count++){ if(i%count==0) break; } if(count==i) printf("%d\n",count); } return 0; }

Here we also use the same logic to find out the prime number from an interval.