#include <iostream>
using namespace std;
unsigned checkPrim(long n){
unsigned nr=0;
if(n==1 || n==0)
return 1;
for(int i=2;i<n;i++)
if(n%i==0)
nr++;
return nr;
}
int main(){
long n,nr=1;
cin>>n;
while(!(n%2) && n!=2){
nr++;
n/=2;
}
if(checkPrim(n)==0)
cout<<n<<" "<<nr;
else
cout<<"Nu exista un astfel de caz";
return 0;
}
Aceasta ar fi rezolvarea, chiar daca personal, cerinta mi se pare incompleta. Deoarece unele valori pentru input nu pot genera un output. Cu ceea ce mi-ai oferit mai sus, ca detalii, aceasta este rezolvarea pe care am gandit-o.