在批处理中计算两个整数的乘积

7

我正在尝试制作一个批处理关机对话框,但遇到了一个小问题。我不喜欢Windows 8在您使用定时器远程关闭计算机时要求您输入秒数,因此我正在尝试制作一个批处理文件,将给定的数字(分钟)转换为秒数。

我已经搜索了大部分互联网,但无法找到在批处理文件中将两个整数相乘的方法。

以下是我目前的进展:

@echo off  
echo Enter a number:  
set /p %num1%=  
echo Enter another:  
set /p %num2%=  
set /a sum1=%num1%*%num2%  
echo The total is %sum1%  
pause  

请问有没有好心人能告诉我哪里出了错?

谢谢, Charlie B

3个回答

8

修复为

@echo off  
echo Enter a number:
set /p num1=  
echo Enter another:
set /p num2=
set /a sum1="num1 * num2"
echo The total is %sum1%  
pause 

6
这将完成你想要的操作:
@echo off
Echo Time to Shutdown:
set /p "min=Time(Min): "
set /a sec=min*60
shutdown /t %sec%

虽然这段代码不能处理无效的输入,但对于您的程序来说,这不是一个问题。(如果您想要它出错处理,请评论)。

Mona


2
您不必在变量声明中加入“%”符号。
@echo off  
echo Enter a number:  
set /p num1=  
echo Enter another:  
set /p num2=  
set /a sum1=%num1%*%num2%  
echo The total is %sum1%  
pause  

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接