[問題] 題目求解

作者: iftrush (綾絹姊)   2018-09-03 17:49:27
題目是數字交換
4321 -> 1234
我寫的code
https://imgur.com/a/pLmBjog
run的結果
https://imgur.com/a/rFCvRiE
我的想法是
4321 / 1000 * 1 -> 4
321 / 100 * 10 -> 30
21 / 10 * 100 -> 200
1 / 1 *1000 ->1000
1000+200+30+4 = 1234
但是在30那步驟就歪掉了
30 + 4 = 36?
想問問錯的點在哪?
作者: pttworld (批踢踢世界)   2018-09-03 19:11:00
Math.pow回傳double, n除以變成double, 需要轉型整數
作者: iftrush (綾絹姊)   2018-09-04 00:43:00
了解,感謝
作者: Cavalier (Cavalier)   2018-09-05 02:06:00
你可以宣告一個 power = 1, 然後每次 power *= 10 就好
作者: iftrush (綾絹姊)   2018-09-06 23:02:00
喔,這樣就不需要Math.pow了
作者: adrianshum (Alien)   2018-09-07 12:53:00
其實連這都不必:r=0;while(i>0){r=r*10+i%10; i/=10}就ok 了
作者: Aidan79225 (鬼神)   2018-09-11 14:52:00
return n==0 ? temp : reverse(n/10, temp*10 + n%10)
作者: sthermit ( )   2018-09-19 02:08:00
直接當字串,取char反過來排?會不會更簡單
作者: f19870421 (魚兒)   2018-10-14 00:19:00
當字串反過來就好了吧

Links booklink

Contact Us: admin [ a t ] ucptt.com