杭电ACM 2031 进制转换 栈实现

来源:互联网 发布:股民信息搜索软件 编辑:程序博客网 时间:2024/06/05 22:47

原题地址:http://acm.hdu.edu.cn/showproblem.php?pid=2031

利用stl的 stack实现,已AC

#include <iostream>#include <stack>using namespace std;int main(){int N,R;stack <int> s;while( cin>>N>>R){if(N<0)//若N是负数,输出负号cout<<"-";N=abs(N);//取N绝对值while( N!=0 )//{s.push(N%R);N/=R;}        int j = s.size();//取栈大小for(int i=0; i< j ;i++)//循环输出栈元素{int x= s.top();//输出栈顶元素if( x < 10 )//若进制位小于10,直接输出,否则转换成字符,这里采用了强制类型转换cout << x;elsecout << char(x+55);s.pop();//取栈顶}cout<<endl;}return 0;}


0 0
原创粉丝点击