Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <iostream>
- using namespace std;
- // 0 - NOT a prime number (0 or 1)
- // 1 - IS a prime number
- // any other divider - IS NOT a prime number
- int prime_number(unsigned long long n)
- {
- if(n == 0 || n == 1)
- return 0;
- for(unsigned long long i = 2; i * i <= n; ++i)
- if(n % i == 0)
- return i;
- return 1;
- }
- unsigned long long next_prime(unsigned long long n)
- {
- for(++n; true; ++n)
- if(prime_number(n) == 1)
- return n;
- }
- int main()
- {
- cout << "Please enter a number: ";
- unsigned long long number;
- cin >> number;
- int result = prime_number(number);
- if(result == 0)
- cout << number << " is not a prime number. The lowest prime number higher than " << number << " is "
- << next_prime(number) << endl;
- else if(result == 1)
- cout << number << " is a prime number\n";
- else
- cout << number << " is not a prime number, because it is divided by "
- << result << ". The lowest prime number higher than " << number << " is " << next_prime(number) << endl;
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement