void osszead(char *num1, char *num2, char *eredmeny, int negativ) { int i; char osszeg[200] = ""; char c[2]; int x; int maradek = 0; int szamlalo = 0; int kulonbseg; kulonbseg=strlen(num1)-strlen(num2); if (kulonbseg<0) kulonbseg*=-1; if (strlen(num1)>strlen(num2)) { for (i=strlen(num1)-1;i!=-1;i--) { x=0; x+=num1[i]-'0'; if (i-kulonbseg>-1) x+=num2[i-kulonbseg]-'0'; x+=maradek; maradek=x/10; sprintf(c,"%d",x%10); strcpy(osszeg+szamlalo,c); szamlalo++; } } else { for (i=strlen(num2)-1;i!=-1;i--) { x=0; if (i-kulonbseg>-1) x+=num1[i-kulonbseg]-'0'; x+=num2[i]-'0'; x+=maradek; maradek=x/10; sprintf(c,"%d",x%10); strcpy(osszeg+szamlalo,c); szamlalo++; } } if (maradek!=0) { sprintf(c,"%d",maradek); strcpy(osszeg+szamlalo,c); szamlalo++; } for(i=0;i!=((strlen(osszeg)/2));i++) { strncpy(c,osszeg+i,1); strncpy(osszeg+i,osszeg+(strlen(osszeg)-1-i),1); strncpy(osszeg+(strlen(osszeg)-1-i),c,1); } printf("%s",osszeg); }