算法笔记C++进制转换问题
发布时间
阅读量:
阅读量
将一个P进制的数值转换为Q进制,通常需要经历两个步骤:
第一步:
将原本以P为基数的数值转换为十进制形式
y=a1p(n-1)+a2p(n-2)+...+an-1*p+an
具体该如何操作?
int x,p;
int y=0,pro=1;//p表示进制
while(x!=0){
y=y+(x%10)*pro;
x=x/10;
pro=p*pro;
}
AI写代码cpp
将十进制数转换为q进制数,通常采用的是除基取余的方法;
/*例如,将数字11转换为二进制形式
首先计算11除以2的余数为5,余数为1;
接着5除以2的余数为2,余数为1;
随后2除以2的余数为1,余数为0;
最后1除以2的余数为0,余数为1;
因此,数字十一对应的二进制表示为1011
*/
int z[40],num=0;
do{
z[num++]=y%q;
y=y/q;
}while(y!=0);//当商不等于零时继续循环
例题 PAT1022
AI写代码cpp
时间约束
100 ms
内存约束
65536 kB
全部评论 (0)
还没有任何评论哟~
