2015年9月30日 星期三

[UVA] 11332 - Summing Digits

題意:
f(n)=
n<10 , n
n>=10 ,f(n每個位數相加)
--------------------------------------------------

我的作法:
照著函數打囉!

--------------------------------------------------

/* 20150930
 * hanting
 * UVa 11332 - Summing Digits
 * C++
 */
#include <iostream>
using namespace std;
int f(int n)
{
    int t=0;
    while(n)
    {
        t+=n%10;
        n/=10;
    }
    return t<10 ? t:f(t);
}
int main()
{
    int num;
    while(cin>>num and num)
    {
        cout<<f(num)<<endl;
    }

    return 0;
}

沒有留言:

張貼留言