二进制vs十进制
Posted zhanghuawei
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了二进制vs十进制相关的知识,希望对你有一定的参考价值。
题目描述
输入描述:
一个1000位(即10^999)以内的十进制数。
输出描述:
输入的十进制数的二进制逆序数。
#include <cstdio>
#include <iostream>
#include <algorithm>
using namespace std;
string f(int m,int n,string a)///将m进制转化为n进制
{
string b;
int l=a.size();
for(int i=0;i<l;)
{
int k=0;
for(int j=i;j<l;j++)
{
int t=(k*m+a[j]-‘0‘)%n;
a[j]=(k*m+a[j]-‘0‘)/n+‘0‘;
k=t;
}
b+=char(k+‘0‘);
while(a[i]==‘0‘)i++;///跳过高位产生的0
}
return b;
}
int main()
{
string a,b,c;
while(cin>>a)
{
b=f(10,2,a);
c=f(2,10,b);
reverse(c.begin(),c.end());
cout<<c<<endl;
}
return 0;
}
以上是关于二进制vs十进制的主要内容,如果未能解决你的问题,请参考以下文章
当我切换到包含片段的活动时应用程序崩溃(二进制 XML 文件第 10 行:二进制 XML 文件第 10 行:膨胀类片段时出错)