进制转换---1252
2018-02-07 13:36
141 查看
进制转换
[align=center]Time Limit: 1000 msMemory Limit: 65536 KiB[/align]Problem Description
输入一个十进制数N,将它转换成R进制数输出。Input
输入数据包含多个测试实例,每个测试实例包含两个整数N(32位整数)和R(2<=R<=16, R != 10)。Output
为每个测试实例输出转换后的数,每个输出占一行。如果R大于10,则对应的数字规则参考16进制(比如,10用A表示,等等)。Sample Input
7 2 23 12 -4 3
Sample Output
111 1B -11
#include <iostream> #include <stdio.h> #include <bits/stdc++.h> using namespace std; char a[16]={'0','1','2','3','4','5','6','7','8','9','A','B','C','D','E','F'}; int main() { int n,r,flag,x; while(cin>>n>>r) { flag=0; stack<char>s; if(n==0) s.push(a[0]); else { if(n<0) { flag=1; n=-n; } while(n) { x=n%r; s.push(a[x]); n/=r; } } if(flag==1) cout<<'-'; while(!s.empty()) { cout<<s.top(); s.pop(); } cout<<endl; } return 0; }
相关文章推荐
- SDUT 1252 - 进制转换
- sdut 1252 进制转换
- 1252 进制转换
- SDUT 1252 进制转换
- 山东理工大学ACM平台题答案关于C语言 1252 进制转换
- sdut oj1252 进制转换(栈)
- SDUT 1252 进制转换
- 进制转换 SDUT 1252
- sdut1252 进制转换
- SDUT—1252(进制转换)
- SDUT 1252 进制转换
- SDUT 1252 进制转换
- 进制转换 sdutoj1252(模拟手写栈2333333)
- 1252进制转换
- 山理工 1252 进制转换
- SDUT 1252----进制转换(栈)
- 九度OJ 1080: 进制转换
- 数学基础——进制转换
- 题目1080:进制转换
- 完全背包的变形POJ1252