Всем привет, подскажите, как можно реализовать операцию инкремента массива, то есть в начале, к примеру, мы имеем массив [2, 3, 4, 5, 9], далее применяем что-то наподобие [2, 3, 4, 5, 9].increment() и на выходе получаем [2, 3, 4, 6, 0].
Или из [2, 3, 4, 9, 9] получаем [2, 3, 5, 0, 0], из [2, 3, 4, 5, 1] - [2, 3, 4, 5, 2] и т.д., я думаю смысл понятен.
function Increment(list) {
let over = 1;
for (i = list.length-1; i >= 0; i--) {
list[i] += over;
if (list[i] > 9) {
list[i] = 0;
over = 1;
} else over = 0;
if (over = 0) break;
}
if (over > 0) list.unshift(1);
return list;
}
если без преобразований в строку и всего такого.
Так же будет работать если из [9,9,9,9,9] нужно получить [1,0,0,0,0,0].