#include #include #include #include #define VEL 2000 int cislo1[VEL],cislo2[VEL],vys[VEL]; char *s1,*s2,*s3,str[VEL+VEL]; int i,j,k,l,z,p,len,sl,carry,c; int main(){ while( (scanf("%d",&z),z>0 )) { while((c=getchar())=='\n'); ungetc(c,stdin); gets(str); /* l = strlen(str) -1; while (l > 0 && isblank(str[l])) l--; str[l + 1] = 0; */ if(z==1){ if(*str=='0'){ /* 0 ? */ /* 012 */ if(str[2]=='0') printf("0 + 0 = 0\n"); else printf("0 + %s = %s\n",str+2,str+2); } else { s1=strchr(str,' '); *s1=0; s1++; if(*s1=='0') printf("%s + 0 = %s\n",str,str); else printf("%s + %s = %s%s\n",str,s1,str,s1); } continue; } s2=s1=s3=strchr(str,' '); *s2=0; s2++; i=0; while(s1>str){ s1--; c=*s1; if(isdigit(c)) cislo1[i]=c-'0'; else cislo1[i]=c-'A'+10; i++; } sl=strlen(s2); s2+=sl; j=0; s3++; while(s2>s3){ s2--; c=*s2; if(isdigit(c)) cislo2[j]=c-'0'; else cislo2[j]=c-'A'+10; j++; } len=ij){ for(;k