浅谈十进制转k进制
先上代码吧
int num;
while(n){
num = n%k;
n /= k;
}
//其中n为十进制数,要转k进制,num为每个位上的数.
举个例子: \(121\) , 转 \(5\) 进制,\(121 =\) \(4 \times 5^2\) + \(4 \times 5^1\) + \(1 \times 5^0\).转换后的数为 \(441\).
\(①\) 第一次运行时 \(:\) \(1 = 121\) % \(5\), \(24 = 121/5\) , 把 \(1\) 提了出来, 其中 \(24 =\) \(4 \times 5^1\) + \(4 \times 5^0\).
\(②\) 第二次运行时 \(:\) \(4 = 24\) % \(5\),\(4 = 24/5\) , 把 \(4\) 提了出来, 其中 \(4 = 4 \times 5^0\).
\(③\) 第三次运行时 \(:\) \(4 = 4\) % \(5\), \(0 = 4/5\) , 把 \(4\) 提了出来, 退出程序.
原理就在过程之中.
针对于 \(t\) 进制转 \(k\) 进制,目前只能想到\(t\) 转 \(10\) 再转 \(k\).

浙公网安备 33010602011771号