Write a program that prompts the user to input a positive integer. It should then output a message indicating whether the number is a prime number. (Note: An even number is prime if it is 2. An odd integer is prime if it is not divisible by any odd integer less than or equal to the square root of the number.)
1
Expert's answer
2017-02-24T14:50:04-0500
#include <iostream> #include <cmath>
int main() { signed input = 0; std::cout << "Please enter a positive integer: "; std::cin >> input; std::cout << "Your have entered this integer: " << input << std::endl;
if (input <= 0) return 1; unsigned number = input;
bool even = (number % 2 == 0); bool prime = false;
if (number == 1) prime = true; else if (even) prime = (number == 2); else { unsigned sqroot = static_cast<unsigned>(sqrt(number)); if (number == sqroot * sqroot) prime = false; else { bool divisible = false; for (unsigned oddn = 3; oddn <= sqroot; oddn += 2) { if (number % oddn == 0) { divisible = true; break; } } prime = !divisible; } }
std::cout << number << " is " << (prime ? "a" : "not a") << " prime number" << std::endl; }
Numbers and figures are an essential part of our world, necessary for almost everything we do every day. As important…
APPROVED BY CLIENTS
"assignmentexpert.com" is professional group of people in Math subjects! They did assignments in very high level of mathematical modelling in the best quality. Thanks a lot
Comments
Leave a comment