Надо вводить число в виде строки. В массиве а будем хранить первое число а в массиве b будем хранить второе число. В a[0] элемент будем хранить длину первой строки а в массиве b[0] вторую строку. Будем хранить в массиве a цифры этого числа таким образом: В первом элементе будем хранить последнюю цифру числа, во втором предпоследнюю цифру и т.д. Аналогично будем делать и для массива b. При вычитании длинных чисел удобно вычитать из наибольшего наименьшее, поэтому предварительно нужно их сравнить и в случае необходимости поменять местами. Так как A-B=-(B-A), то в случае когда A < B можно вывести знак "-", а затем положительное значение (B-A). При вычитании будем выполнять поразрядное вычитание с использованием переменной c для хранения значения переноса. Результат операции можно сохранять в массиве a, т.к. ранее используемые разряды фактически не имеют значения для дальнейшего процесса вычисления. Здесь при сравнении можете посмотреть разбор задачи В Сравнение. Сначала с=0. Циклом for мы пробегаем с 1 до a[0] с счетчиком i. Внутри цикла мы будем вычитать каждую цифру числа а и b. И будем хранить в переменную c=c+a[i]-b[i]+10;. Вы задаете вопрос почему +10 потому, что может быть так что a[i] < b[i] и для страховки я прибавил 10. В элемент a[i] будем хранить остаток от деления с на 10. Потому что a-b будет храниться в a. Теперь If-ом будем проверять если с <10 то с=-1 иначе с=0. Потом циклом while будем проверять (пока a[a[0]]=0 and a[0] >1 то a[0]=a[0]-1;). Потом массив a выводим в обратном порядке.
Напишите программу, которая находит разность двух целых неотрицательных чисел. Длина каждого числа не превышает 250 знаков.
Входные данные
Даны два числа, каждое записано в отдельной строке
Выходные данные
Выведите разность чисел (учтите, что может получиться отрицательный результат).