Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include<bits/stdc++.h>
- using namespace std;
- typedef long long int ll;
- string con(string s,int base1,int base2)
- {
- string news,ans;
- ll i,j,x=0,k,len=s.size(),a,jog=0,power=1,rem;
- for(i=len-1; i>=0; i--)
- {
- if(s[i]>='A' && s[i]<='Z')
- a=(s[i]-'A')+10;
- else
- a=(s[i]-'0');
- jog+=(a*power);
- power*=base1;
- }
- while(jog)
- {
- rem=jog%base2;
- if(rem>9)
- {
- ans+=(rem-10+'A');
- }
- else
- ans+=(rem+'0');
- jog/=base2;
- }
- reverse(ans.begin(),ans.end());
- return ans;
- }
- int main()
- {
- string s;
- int base1,base2,i,j,k;
- while(cin>>s>>base1>>base2)
- {
- string news;
- i=0;
- if(s[i]=='0')
- {
- while(s[i]=='0')
- {
- i++;
- }
- for(j=i;j<s.size();j++)
- news+=s[j];
- }
- else
- news=s;
- if(news.size()==0)
- {
- cout<<" 0"<<endl;
- continue;
- }
- string ans=con(news,base1,base2);
- if(ans.size()>7)
- cout<<" ERROR"<<endl;
- else
- {
- int sz=ans.size();
- int len=abs(7-sz);
- for(i=0;i<len;i++)
- cout<<" ";
- cout<<ans<<endl;
- }
- }
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement