Есть двоичное число. Суть задания, перевести в прямое, обратное и дополнительное представление.
Первые два сделал, а третье не доходит. Если число заканчивается на 0, то просто добавить к нему 1 нету проблем, но если заканчивается на 1, то при добавлении 1 возникает переполнение. Нужно заменять на 0 и следующий разряд менять на единицу. Алгоритм решения:
https://math.semestr.ru/inf/inverse.php
Нашел решение такой проблемы на Паскале:
for k := length(x) downto 1 do
if m[k] = '1' then
m[k] := '0'
else
begin
m[k] := '1';
break;
Попробовал переписать у себя, но не работает:
for (let i = resultNumberAdd.length-1; i >= 1; i--) {
if (resultNumberAdd[i] = '1') {
resultNumberAdd[i] == '0';
}
else {
resultNumberAdd[i] == '1';
break;
}
}
alert(resultNumberAdd);
Вобщем, если не сложно, кто может описать, как осуществить это, чтобы работало. Извиняюсь, если туплю, только начинаю изучать.