例如將123輸出成
3
2
1
這個我會用除法的商/和餘數%運算子解決,先除以10 後的餘數即可輸出,得到的商loop除以10後再輸出
可是如果要輸出成
1
2
3
要怎麼寫呢?
( 不能用 string也不能萱告太多變數)
難道需把原數先顛倒,再輸出嗎?
謝謝
unl7911 wrote:
例如將123輸出成321...(恕刪)
不要用 ToString() ... 那就只能改用數字的公式來解決
依序用該數字所在位置(n) 的 10^(n-1) 去算
12345 / 10^4 或 12345 % 10^4,會得到 1 和 2345
2345 /10^3 或 2345 % 10^3,會得到 2 和 345
345 /10^2 或 345 % 10^2,會得到 3 和 45
45 /10^1 或 45 % 10^1,會得到 4 和 5
5 / 10^0 或 5 % 10^0,會得到 5 和 0
int number = 12345;
while (number > 0)
{
int digit = number / Math.Pow(10, (int)Math.log10(number));
Console.Write(digit);
number %= Math.Pow(10, (int)Math.log10(number));
}
輸出就是 1 2 3 4 5 的順序.