一、进制转换理论
十进制数N和其他d进制数的转换是计算机实现计算的基本问题,其解决方法很多,其中一个简单算法基于下列原理:
N = (N div d) * d + N mod d(其中:div为整除运算,mod为求余运算)
例如,十进制数105计算八进制数是多少:
105 % 8 = 1
105 / 8 = 13
那么第一低位:1
13 % 8 = 5
13 / 8 = 1
那么第二低位: 5
1 % 8 = 1;
1 / 8 = 0;
那么第三低位:1
综上所述:十进制数105转换成八进制数为151
二、C++编码实现int main() {
std::cout <
std::stack S;
int N, M, E;
std::cout <
std::cin >> N;
std::cout <
std::cin >> M;
while (N)
{
S.push(N % M);
N = N / M;
}
std::cout <
while (!S.empty())
{
std::cout <
S.pop();
}
std::cout <
return 0;
}
关注【游戏讲坛】微信公众号,获取最新动态!