Я создал цикл, чтобы превратить десятичное число в двоичное число:/л цикла неспособности работать
SET /P InputNum="Input Number: "
for /l %%x in (1, 1, 5) do (
SET /A Output=%InputNum% %% 2
SET BinaryArray[%%x]=%Output%
SET /A InputNum /= 2
)
ECHO Binary Result:
%BinaryArray[1]%%BinaryArray[2]%%BinaryArray[3]%%BinaryArray[4]%%BinaryArray[5]%
PAUSE
Это не работает, хотя. «Вывод» не назначается его значение, а это означает, что массив не заполняется, и даже «InputNum/= 2» по какой-то причине не работает. Выход «InputNum/= 2» вообще не работает.
У меня это работает в не форме:
SETLOCAL
SET /P InputNum="Input Number: "
SET /A Output1=%InputNum% %% 2
ECHO Bit 1: %Output1%
SET /A InputNum /= 2
SET /A Output2=%InputNum% %% 2
ECHO Bit 2: %Output2%
SET /A InputNum /= 2
SET /A Output3=%InputNum% %% 2
ECHO Bit 3: %Output3%
SET /A InputNum /= 2
SET /A Output4=%InputNum% %% 2
ECHO Bit 4: %Output4%
SET /A InputNum /= 2
SET /A Output5=%InputNum% %% 2
ECHO Bit 5: %Output5%
ECHO Binary Result: %Output1%%Output2%%Output3%%Output4%%Output5%
ENDLOCAL
PAUSE
Но я не могу за жизнь мне получить его даже близко к функциональным внутри более изящным контуром. Я пропустил какой-то синтаксис, который я просто не понимаю?