Меня попросили сделать калькулятор, принимающий входные данные в виде строки, чтобы мы могли рассчитывать с длинными числами, результатом также должна быть строка.Я попробовал сложную часть, но она не работает с двумя числами разной длины.Может кто-нибудь сказать мне, где мой код не работает и как я могу это исправить?Также идея о том, как бы я разделить, используя этот принцип.
i = strlen(first);
j = strlen(second);
x = 0;
while(1)
{
z = (first[i-1] - 48) + (second[j-1] - 48) + carry;
carry = z/10;
result1[x] = z%10 + 48;
x++;
i--;
j--;
if(i==0 && j==0)
{ if(carry!=0)
result1[x] = carry + 48;
break;
}
}
i = strlen(result1);
for (i = 0, j = strlen(result1)-1; i < j; i++, j--)
{
c = result1[i];
result1[i] = result1[j];
result1[j] = c;
}
puts(result1);