/**//*==================================================*\ | 所有數位相加 | dig(x) := x if 0 <= x <= 9 | dig(x) := dig(sum of digits of x) if x >= 10 \*==================================================*/ 方法一:模擬 int dig(int x){ if( x <10 ) return x; int sum =0; while( x ) { sum += x%10; x /=10; } return dig(sum); } 方法二:公式 【不太明白】 int dig(int x){ return (x+8)%9+1; }//暈 不是很容易懂么 不是總在mod 9的區間中么 特殊處理下 0-8 即可。。。