Problem
Find all prime numbers in a range of (1..1000)
Solution
If a number cannot be divided by all numbers below its square root, it is a prime number
#include <iostream>
#include <math.h>
using namespace std;
bool is_prime(int n)
{
if(n == 1){
cout << "1 is neither prime nor none-prime number" << endl;
return false;
}
else if (n == 2){
return true;
}
int m = (int) (sqrt(n * 1.0) + 1);
for(int i = 2; i < m; i++){
if(n % i == 0){
return false;
}
}
return true;
}
int main(int argc, char* argv[])
{
int i;
for(i = 1; i < 1001; i ++){
if(is_prime(i)){
cout << i << " is a prime number " << endl;
}
}
return 0;
}