无忧启动论坛
标题:
DOS下如何实现数值运算?
[打印本页]
作者:
gmy
时间:
2005-6-5 11:56
标题:
DOS下如何实现数值运算?
[这个贴子最后由gmy在 2005/06/05 01:23pm 第 1 次编辑]
大家知道,在BASIC,C语言或WIN2K的CMD命令行中可以轻松实现数值运算,但在纯DOS命令行下就困难了,需要第三方工具strings或varset等,如果是普通的+-*/的算数运算还能对付,但稍难一点的,诸如 BASIC 求整数 x=int(y) 就不好现实了,不知纯DOS下有这样的第三方小工具吗?另外还有 求四舍五入,平方根,绝对值 函数也要!
作者:
wang6071
时间:
2005-6-5 14:40
标题:
DOS下如何实现数值运算?
[这个贴子最后由wang6071在 2005/06/05 08:48pm 第 2 次编辑]
下面使用xset.com处理四舍五入例,注意,下面的批处理仅处理小数位是0-1位的情况,大于1位请修改相应的left判断语句。
set vartmp=10.4 //这里放入要处理的数
xset /math vartmp1=%vartmp%+0.5 //先将原值+0.5
xset /math var=%vartmp1%-%vartmp% //用新值-原值
if not var=="1" goto var1
var0:
set var=%vartmp1% //处理原值小数位是0.5的情况(此时新值无小数位)
goto end
var1:
xset /left -2 var=%vartmp1% //原值小数位不是0.5的情况(此时新值有小数位,用left去掉)
end:
set vartmp=
set vartmp1=
至此,var中已是需要的四舍五入的值。
xset的/math可以做
Mathematical operators:
- on integer and floating point values: + - * / () ^ (exponent) //有指数运算哦!
- on integer values: % (modulo)
Logical operators: = < > <= >= <>
return 1 if true, 0 if false
Rem: ';*'; may be used to ';and'; values,
';+'; to ';or'; them.
Precedence: + and - have the highest precedence,
all other expressions are evaluated from left to right.
另外,strings也可以做整数的add(整数加) sub(整数减) mul(整数乘) div(整数除) and or xor not(逻辑运算)等运算(注意,仅限于整数)
楼主要求的平方根,绝对值可以通过上述方法来变通解决。
作者:
pk4321
时间:
2005-6-6 14:46
标题:
DOS下如何实现数值运算?
在DOS下通过命令行进行计算还不如使用Tubro C或QBASIC来算好过了!
作者:
gmy
时间:
2005-6-6 16:29
标题:
DOS下如何实现数值运算?
谢谢 wang6071,看来只能用XSET自己写了
作者:
tanchenglong
时间:
2024-3-22 13:43
好贴,先收藏了,楼主加油~~
作者:
axiang117
时间:
2024-3-22 15:22
现在dos基本上没人用了,只能帮顶
作者:
pda8888
时间:
2024-3-23 14:11
有dos版的bc,可以用。
作者:
dos时代菜鸟
时间:
2024-3-23 16:48
20年前的问题,现在 回答个啥?
欢迎光临 无忧启动论坛 (http://bbs.c3.wuyou.net/)
Powered by Discuz! X3.3