算法笔记 — 进制转换(大数运算-十进制转二进制)
程序员文章站
2022-07-15 09:36:04
...
题目链接:http://www.codeup.cn/problem.php?cid=100000579&pid=2
题目描述
将一个长度最多为30位数字的十进制非负整数转换为二进制数输出。
输入
多组数据,每行为一个长度不超过30位的十进制非负整数。
(注意是10进制数字的个数可能有30个,而非30bits的整数)
输出
每行输出对应的二进制数。
样例输入
985 211 1126
样例输出
1111011001 11010011 10001100110
大数以字符串的形式输入...
#include<iostream>
#include<cstring>
using namespace std;
typedef long long ll;
char ss[33];
int s[33];
char ans[1111];
int main(){
ll n;
while(cin>>ss){
int len=strlen(ss);
int cnt=0;
for(int i=0;i<len;i++){
s[i]=ss[i]-'0';
}
int sum=1;
int t;
while(sum){
sum=0;
for(int i=0;i<len;i++){
t=s[i]/2;
sum+=t;
if(i==len-1){
ans[cnt++]=s[i]%2+'0';
}else{
s[i+1]+=s[i]%2*10;
}
s[i]=t;
}
}
for(int i=cnt-1;i>=0;i--){
cout<<ans[i];
}
cout<<endl;
}
return 0;
}
上一篇: 算法训练 二进制转十进制
下一篇: 二进制转十进制十进制转二进制
推荐阅读
-
二进制在线转换成文字(二进制转十进制的方法)
-
进制转换算法原理(二进制 八进制 十进制 十六进制)
-
Python 内置函数进制转换的用法(十进制转二进制、八进制、十六进制)
-
Python 内置函数进制转换的用法(十进制转二进制、八进制、十六进制)
-
二进制转十进制算法(从第一位开始计算)
-
java十进制转二进制(输入一个十进制数将其转换成二进制)
-
C++中十进制数转二进制数的几种算法
-
Python 进制转换, 实现任意进制转换为任意进制的方法, 支持小数和负数, 二进制转十进制, 十进制转二进制, 小数进制转换, k进制转换
-
在线进制转换 二进制转十进制 十进制转二进制
-
C语言,进制转换之二进制转十进制,完整代码