[笔记] 十进制转n进制

思路

n对 xa取模,就是xa-1 位上的数字,因为模出来的数不足xa
举例来说就是5&21=1,这个1就是20位上的1
当前位取完后,n/=xa,表示n将对x(a+1)进行取模(进入下一位)
重复此操作直至n=0。

代码实现


//把n转换为x进制下的数 
int turn(int n, int x) {
	//a1代表当前是对对应十进制的第几位进行操作
	int ans = 0, a1 = 1;
	while(n) {
		ans += (n % x) * a1;
		n /= x; 
		//要进位咯 
		a1 *= 10;
	}
	return ans;
}

你可能感兴趣的:(笔记,算法,c++)