Write a c function with comment showing each step that is a
Write a c++ function with comment showing each step that is a recursive version of problem 2:
Problem 2:Write a c++ function that takes as input an integer. The function uses a while loop to
determine whether that number is a prime number or not, and returns True if it is, and False otherwise.
Solution
#include <iostream>
using namespace std;
 bool isPrime(int n) {
 int f = 2;
 while ( f < n / 2) {
 if (n % f == 0) {
 return false;
 }
 f++;
 }
 return true;
 }
 int main()
 {
 int n;
 cout<<\"Enter an integer: \";
 cin >> n;
 if(isPrime(n)){
 cout<<\"Prime\"<<endl;
 }
 else{
 cout<<\"Not Prime\"<<endl;
 }
 return 0;
 }
Output:
sh-4.2$ g++ -o main *.cpp
sh-4.2$ main
Enter an integer: 37
Prime
sh-4.2$ main
Enter an integer: 33
Not Prime
Recursive Version
#include <iostream>
using namespace std;
 bool isPrime(int n, int i){
 if (i == 2)//if i value reaches 2 then it is a prime number
 return true;
 else{
 if (n % i == 0){//checking divisible or not
 return false;
 }
 else
 return isPrime(n,i-1);//if not divisible then calling again for next check
 }
 }
 int main()
 {
 int n;
 cout<<\"Enter an integer: \";
 cin >> n;
 if(isPrime(n,n/2)){
 cout<<\"Prime\"<<endl;
 }
 else{
 cout<<\"Not Prime\"<<endl;
 }
 return 0;
 }
Output:
sh-4.2$ g++ -o main *.cpp
sh-4.2$ main
Enter an integer: 33
Not Prime
sh-4.2$ main
Enter an integer: 37
Prime


