//Eric Bernal CS1A Chapter 6, P. 375, #21
//
/*******************************************************************************
* DETERMINE PRIME NUMBER
* _____________________________________________________________________________
* This program determines if a given whole number is prime.
* _____________________________________________________________________________
* INPUT
* number : The given whole number
*
* OUTPUT
* Whether the given number is prime
*
******************************************************************************/
#include <iostream>
using namespace std;
// FUNCTION PROTOTYPE
bool isPrime(int num);
int main() {
//DATA DICTIONARY - INITIALIZE
int number; // INPUT : A given whole number
bool prime; // OUTPUT : Determine if a number is prime.
// Initialize Program Variables
cout << "Enter a number to determine if it is prime: " << endl;
cin >> number;
while (number < 1) {
cout << "Please enter a number greater than 1: " << endl;
cin >> number;
}
// Determine If Given Number is Prime
prime = isPrime(number);
if (prime) {
cout << number << " is prime." << endl;
} else {
cout << number << " is not prime." << endl;
}
return 0;
}
/*****************************************************************************
* The purpose of the following function is to determine if a whole number is
* prime or not.
*****************************************************************************/
bool isPrime(int num) {
bool prime = true;
// 1 and N are always divisors, so check for 2 through (N-1)
for (int i = 2; i < num; i++) {
// May be prime IF all prior numbers AND this number are not
// divisors
prime = prime && ((num % i) != 0);
}
return prime;
}