#include <iostream>
#include <string>
#include <stack>
#include <vector>
using std::cout;
using std::endl;
using std::cin;
using std::string;
using std::stack;
using std::vector;
string change(int num,int m){
int n=0,e;
stack<int> s;
while(num){
n=num%m;
if(n>9)
e=n-10+'A';
else
e=n+'0';
s.push(e);
num/=m;
}
string result="";
while(!s.empty()){
result+=s.top();
s.pop();
}
return result;
}
int main()
{
int base;
int a,b,c;
vector<string> vect;
while(cin>>a>>b>>c&&!(a==0&&b==0&&c==0))
{
base = a;
vect.push_back(change(b,base));
vect.push_back(change(c,base));
vect.push_back(change(b+c,base));
}
for(vector<string>::size_type ix =0; ix <vect.size()-2; ix+=3)
{
cout<<vect[ix]<<" + "<<vect[ix+1]<<" = "<<vect[ix+2]<<endl;
}
return 0;
}
|