进制转化是学习编程中最常见的问题之一,涉及的知识点比较简单,是入门等级的问题。
这里记录一下自己用起来比较顺手的进制转化代码:
最基本的想法一共分为三步:
- j进制转十进制
- 十进制转k进制
- vans
核心代码部分:
// 十进制转k进制部分
int dec2k(int k, int dec)
{
int res = 0;
int i = 1;
while(dec)
{
res = res + i * (dec % k);
dec = dec / k;
i = i * 10;
}
return res;
}
因此总代码为:
#include <iostream>
using namespace std;
int j2dec(int j, int num)
{
int res = 0;
int i = 1;
while(num)
{
res = res + i * (num % 10);
num = num / 10;
i = i * j;
}
return res;
}
int dec2k(int k, int num)
{
int res = 0;
int i = 1;
while(num)
{
res = res + i * (num % k);
num = num / k;
i = i * 10;
}
return res;
}
int j2k(int j, int k, int num)
{
int dec,res;
dec