C and C++

Program using a nested for loop to find the prime numbers from 2 to 20

#include <stdio.h>

int main() {
int i, j, isPrime;

printf("Prime numbers from 2 to 20 are:\n");

for (i = 2; i <= 20; i++) { // Outer loop: check each number from 2 to 20
isPrime = 1; // Assume i is prime

for (j = 2; j < i; j++) { // Inner loop: check if i is divisible by any number less than i
if (i % j == 0) {
isPrime = 0; // Not a prime number
break; // No need to check further
}
}

if (isPrime) {
printf("%d ", i); // Print prime number
}
}

return 0;
}


OUTPUT

Prime numbers from 2 to 20 are:
2 3 5 7 11 13 17 19

Explanation:

  • Outer Loop (for (i = 2; i <= 20; i++)):

    • Checks every number from 2 to 20.

  • Inner Loop (for (j = 2; j < i; j++)):

    • Checks if i is divisible by any number other than 1 and itself.

    • If divisible, isPrime is set to 0 (false) and loop breaks.

  • isPrime Flag:

    • If still 1 after the inner loop, the number is prime and is printed.

What Is a Prime Number?

A prime number is a number greater than 1 that has no divisors other than 1 and itself.