/******************************************************************************
Creare una funzione che ricevuto un numero restituisce la somma delle cifre del numero
se questa è minore di 10, il risultato della ri-applicazione della funzione sulla somma
delle cifre del numero altrimenti.
Esempi: f(15)=1+5=6,
f(392)=f(14)=f(5)=5 dove 3+9+2=14 e 1+4=5.
*******************************************************************************/
#include <iostream>
using namespace std;
int f(int n)
{
int somma=0;
while(n!=0)
{
somma=somma+n%10;
n=n/10;
}
if(somma<10){return somma;} //caso base
else{return f(somma);} //passo ricorsivo
}
int main()
{
int numero;
cout<<"inserisci un numero naturale";
cin>>numero;
cout<<"f("<<numero<<")="<<f(numero);
return 0;
}