标题: [数值计算] set /a 能否计算小数/浮点数 [打印本页]
作者: zqy 时间: 2008-10-25 23:44 标题: set /a 能否计算小数/浮点数
本帖最后由 pcl_test 于 2016-11-26 02:57 编辑
set使用小数的方法
看了教程/a是数字变量,但是没有看到小数变量啊
我想实现计算器的功能- @echo off
- set /p pr=请输入计算题目,如(a+1,1*1)
- echo 您输入的是%pr%
- set /a in=%pr%
- echo 计算结果为%in%
- pause
复制代码
在里面直接输入计算题目,如1+1,1*1等..
但是不能使用小数,我想使用小数
作者: pusofalse 时间: 2008-10-25 23:57
批处理在计算小数方面非常弱,单纯的set /a n=10/4,并不能将n的值设为2.5,只是舍去小数部分取整数2。
若要计算小数其中设计的计算就太复杂了。。。
给你个例子:- @echo off
- set n=121
- for /l %%a in (1 1 11) do (
- set/a m=n/4,mod=n%%4
- if %%a equ 1 (call set "var=%%var%%%%m%%.") else (call set "var=%%var%%%%m%%")
- call set "n=%%mod%%0"
- )
- echo %var%
- pause
复制代码
121/4=?
精确到小数点后10位。
[ 本帖最后由 pusofalse 于 2008-10-26 06:25 编辑 ]
作者: zqz0012005 时间: 2008-10-26 00:36
数字运算是bat的软肋,推荐用vbs- a=inputbox("请输入计算题目,如","输入","1+2/3")
- WScript.Echo a & " = " & FormatNumber(eval(a),,-1)
复制代码
作者: zqy 时间: 2008-10-30 19:57
哦..
vbs啊?
作者: savage 时间: 2008-10-30 20:15
http://user.qzone.qq.com/24807208/blog/1225183784
[ 本帖最后由 savage 于 2008-10-30 20:16 编辑 ]
作者: savage 时间: 2008-10-30 20:16
http://user.qzone.qq.com/24807208/blog/1225183784
这里边有你想要的
VBS
欢迎光临 批处理之家 (http://www.bathome.net/) |
Powered by Discuz! 7.2 |