算法笔记入门(进制转换专题篇)—— 笔记总结

进制转换其实主要是两个问题,十进制数转换为Q进制数,Q进制数转换为十进制数,当然也有P进制数转换为Q进制数。

1.将P进制数转换为十进制数y在这里插入代码片

思路很简单,看代码很容易就明白了

int y=0,product=1;
while(x!=0){
	y = y + (x%10)*product;
	x = x/10;
	product = product*P;
}

2.将十进制数转换为Q进制数

这里采用的是”除基取余法“。所谓的基,是值要转换的进制Q,因此除基取余法的意思就是每次将十进制数除以Q,然后将得到的余数作为低位进行存储,而商则继续除以Q并进行上面的操作,最后当商为0时,将所有位从高位到低位进行输出。

int a[40],sum=0;
do{
	a[num++]=y%Q;
	y=y/10;
}while(y!=0);

3.p进制数转换为q进制数

先将p进制数转换为十进制数,再将得到的这个十进制数转换为q进制数并输出。

上一篇:DVWA--SQLInjection


下一篇:PAT-A1009 Product of Polynomials (多项式乘法)