Răspuns:
#include <iostream>
using namespace std;
int n,i,nr;
int main()
{
cin>>n;
nr=0;
for(i=1;i<=n;i++)
if(n%i==0)
nr=nr+1;
if(nr==4)
cout<<"n este aproape prim";
else
cout<<"n nu este aproape prim";
return 0;
}
Explicație: daca n e aproape prim inseamna din ipoteza ca n=p1*p2, unde p1 si p2 sunt 2 nr nat prime distincte deci descompunerea lui n in factori primi va fi p1 la puterea 1 * p2 la puterea 1 deci numarul de divizori ai lui n va fi (1+1)*(1+1)=4