数据结构实验之栈一:进制转换
Time Limit: 1000MS Memory limit: 65536K
题目描述
输入一个十进制整数,将其转换成对应的R(2<=R<=9)进制数,并输出。
输入
第一行输入需要转换的十进制数;
第二行输入R。
第二行输入R。
输出
输出转换所得的R进制数。
示例输入
1279 8
示例输出
2377
提示
来源
示例程序
#include<bits/stdc++.h>
#define stacksize 100001;
using namespace std;
stack<int>s;
void Transfer(int n,int r)
{
while(n)
{
int t=n%r;
s.push(t);
n=n/r;
}
}
void Display()
{
while(!s.empty())
{
cout<<s.top();
s.pop();
}
}
int main ()
{
int n,r;
while(cin>>n)
{
cin>>r;
if(n==0)
{
cout<<"0"<<endl;
}
bool flag=false;
if(n<0)
{
flag=true;
n=-n;
}
Transfer(n,r);
if(flag)
{
cout<<"-";
}
Display();
cout<<endl;
}
return 0;
}