I am attempting to create a program that reads numbers and either classifies them as a prime, or prints their prime divisors. I have most of the program done, however, I have been stuck on the final 2 parts for a long time now and my professor doesnt have office hours today, so I cant ask him.

I am particularly confused about the below code. I have read the textbook chapters on the subject and played around with various code. I have next to no idea how to solve this last part and looking at various examples online have provided little to no help to me.Code://----------------------------------------------------------------- // DO: 1. Fill in your name and section // Name: // // Course: // // Purpose: This program reads numbers and either classifies them as // prime or prints their prime divisors. The program quits // when the user enters a number less than the First Prime, // which is 2. // // Input: An integer // // Output: For each input number // Display a message if the input number is a prime. // Print all prime divisors if the input number is not // prime. // //--------------------------------------------------------------------- #include <string> #include <iostream> #include <cmath> // cmath is needed for the sqrt() function using namespace std; const int FIRST_PRIME = 2; // DO: 2. Complete the prototype for IsPrime. // HINT: See function definition below. bool IsPrime( int num ); bool IsAPrimeDivisor( int candidate, int number ); // DO: 3. Complete the prototoype for PrintPrimeDivisors. // HINT: See the function definition below and // the call to the function in main(). void PrintPrimeDivisors( int number ); int main() { int number; cout << "Enter a number: "; cin >> number; cout << endl; while( number >= FIRST_PRIME ) { // DO: 4. Complete the NEXT line by adding a call to // the IsPrime function. // HINT: Look at the function definition for // the parameter. Also look at the return // for IsPrime() for use in the If // conditional. if( IsPrime(number) ) cout << number << " is prime." << endl; else { cout << "Prime divisors of " << number << ":" << endl; PrintPrimeDivisors( number ); } cout << "\nEnter a number: "; cin >> number; cout << endl; } // End of while loop cout << "\nCompleted processing!"; return 0; } // End of main() // IsPrime: returns true if given number is prime, false otherwise. // Note: a number is prime if no value between 2 and // the square root of the number is a factor. // Parameter: (in) bool IsPrime( int num ) { int limit; // DO: 5. Complete the next line by calling the sqrt() function // from <cmath> to find the largest number that needs to // be examined. limit = int (sqrt(num)); int count = FIRST_PRIME; while( count <= limit ) { if( num % count == 0 ) return false; // num is not prime! count++; } return true; // num is prime! } // end of IsPrime() // DO: 6. Complete the following function definition // so it matches its specification. // // IsAPrimeDivisor: returns IF candidate divides number evenly // AND candidate is prime, then return true; // OTHERWISE the candidate is not prime // then the function returns false. // Parameters: (in, in) bool IsAPrimeDivisor( int candidate , int number ) { if ( candidate % 2 == 0 ) return ( true); else return ( false ); } // end of IsAPrimeDivisor() // DO: 7. Complete the following function definition // using the following pseudocode: // // for each value between FIRST_PRIME and half of the // <target>, which we refer to as the <limit>, (inclusive) // // if the value Is A Prime Divisor of the target // print the value followed by a space // print an endl (end of line marker) // // Note that this is a count-controlled loop problem. // Be sure you call IsAPrimeDivisor() in the if statement. // // PrintPrimeDivisors: find and print the prime divisors of target // Parameter: (in) void PrintPrimeDivisors(int target) { const int limit = target / 2; int primeCandidate = FIRST_PRIME; while( primeCandidate <= limit ) { // DO: 7A. Complete the if condition as described above if( IsAPrimeDivisor() ) { // DO: 7B. Complete the cout as described above. cout << << " "; } // DO: 7C increment the loop counter. } // end of for loop cout << endl; } // end of PrintPimeDivisors() function

Any help or examples anyone could point me to would be greatly appreciated. thank you.Code:// DO: 6. Complete the following function definition // so it matches its specification. // // IsAPrimeDivisor: returns IF candidate divides number evenly // AND candidate is prime, then return true; // OTHERWISE the candidate is not prime // then the function returns false. // Parameters: (in, in) bool IsAPrimeDivisor( , ) { } // end of IsAPrimeDivisor() // DO: 7. Complete the following function definition // using the following pseudocode: // // for each value between FIRST_PRIME and half of the // <target>, which we refer to as the <limit>, (inclusive) // // if the value Is A Prime Divisor of the target // print the value followed by a space // print an endl (end of line marker) // // Note that this is a count-controlled loop problem. // Be sure you call IsAPrimeDivisor() in the if statement. // // PrintPrimeDivisors: find and print the prime divisors of target // Parameter: (in) void PrintPrimeDivisors(int target) { const int limit = target / 2; int primeCandidate = FIRST_PRIME; while( primeCandidate <= limit ) { // DO: 7A. Complete the if condition as described above if( IsAPrimeDivisor() ) { // DO: 7B. Complete the cout as described above. cout << << " "; } // DO: 7C increment the loop counter. } // end of for loop cout << endl; } // end of PrintPimeDivisors() function