👤
AndyLand
a fost răspuns

Sa se scrie un program care determina
1.Să se determine cel mai mare număr prim de trei cifre.
2.Să se determine cel mai mic număr prim de patru cifre.

in c++


Răspuns :

#include <iostream>

using namespace std;

bool isThr(int num, int inx){

   int isPrime = 0;

   if(num > 1){

       for(int i = 2;i <= num / 2;i++){

           if(num % i == 0) isPrime++;

       }

       if(isPrime == 0){

           int temp = 0, count = 0;

           while( num != 0 ){

               temp = num % 10;

               num /= 10;

               count++;

           }

           if( count == inx ) return true; else return false;

       } else {

           return false;

       }

   } else {

       return false;

   }

}

int main(){

   int n = 0, nmax = 0, nmin = 0;

   cout << "n = "; cin >> n;

   int arr[n];

   for(int i = 0; i < n; i++){

       cin >> arr[i];

       if(isThr(arr[i], 3) && arr[i] >= nmax) nmax = arr[i];

   }

   nmin = arr[0];

   for(int i = 0; i < n; i++){

       if(isThr(arr[i], 4) && nmin > arr[i]) nmin = arr[i];

   }

   cout << "Cel mai mare numar prim de trei cifre : " << nmax << endl;

   cout << "Cel mai mic numar prim de patru cifre : " << nmin << endl;

   return 0;

}