/******************************************************************************
Scrivere il codice di una funzione f(n)
che restituisce 0 nel caso n sia dispari, 1+f(n/2) altrimenti.
*******************************************************************************/
#include <iostream>
using namespace std;
int f(int n)
{
if((n%2==1)||(n==0))
{return 0;} //caso base
else
{return 1+f(n/2);} //passo ricorsivo
}
int main()
{
int numero;
cout<<"inserisci un numero ";
cin>>numero;
cout<<"f("<<numero<<")="<<f(numero);
return 0;
}