如何在Batch中正确执行模数运算?

Isz*_*szi 5 math batch-file windows-7

我正在尝试编写一个批处理文件,该文件根据对set变量执行的模运算的结果执行操作.但是,我似乎无法做到这一点.

首先测试我的数学运算语法,我一直在尝试使用更简单的脚本来产生所需的结果.

:START
SETLOCAL
SET /P Input-Num="Input Number: "
SET /A Input-Num=%Input-Num% %% 2
ECHO %Input-Num%
ENDLOCAL
PAUSE 
:END
Run Code Online (Sandbox Code Playgroud)

如果我输入5,预期的输出是1.但是,相反,我得到一条消息Missing operator.,然后输出5.

我在这做错了什么?

Lit*_*les 4

使用SET /P是你的问题,因为 5 不再被视为数值。您上面的示例按预期工作