Код Senior Реализация с нуля обновлено
Сложение больших чисел строками
Условие
Два неотрицательных целых числа заданы строками произвольной длины. Верни их сумму строкой. Number и BigInt использовать нельзя.
Примеры
sumBigStrings("90071992547409918889", "1489") // "90071992547409920378"
sumBigStrings("999", "1") // "1000"
sumBigStrings("0", "0") // "0"
Как подойти
Числа за пределами 2^53−1 в JS теряют точность, поэтому арифметика строками - не искусственное упражнение: так приходят идентификаторы и суммы с бэкенда. Условие цикла i >= 0 || j >= 0 || carry закрывает разом разную длину и финальный перенос. BigInt решает задачу в одну строку - назови его как правильный промышленный ответ, но покажи, что умеешь и руками.
Подсказки: 3
- Складывай с младших разрядов, как в столбик.
- Цикл идёт, пока есть цифры хоть в одном числе или незакрытый перенос.
- Код символа минус 48 даёт цифру без преобразования типов.
Решите в тренажёре
Редактор с автотестами прямо в браузере. Можно решить спокойно, вслух или под таймером, как на собесе.