找回密码
 加入
搜索
查看: 1457|回复: 8

很郁闷的算数~~~批处理转AU3

[复制链接]
发表于 2009-5-21 18:31:30 | 显示全部楼层 |阅读模式
本帖最后由 lm959680 于 2009-5-22 16:40 编辑

从一个批处理过来的一句

@echo off
set compt=50
set /a swport=3260+(%compt%-1)/50*2
echo %swport%
pause

set加了一 /a   最要注意的一个词

/A 命令行开关指定等号右边的字符串为被评估的数字表达式。该表达式
评估器很简单并以递减的优先权顺序支持
()                  - 分组
! ~ -               - 一元运算符
* / %               - 算数运算符
+ -                 - 算数运算符
<< >>               - 逻辑移位
                   - 按位“与”
^                   - 按位“异”
|                   - 按位“或”
= *= /= %= += -=    - 赋值
  &= ^= |= <<= >>=
,                   - 表达式分隔符

Local $swport,$compt
$compt=50
$swport=3260+($compt-1)/50*2
MsgBox(0, "", $compt&"   "&Round($swport))

结果就不对了``

AU3结果3261
计算器 3260
批处理 3260

Local $swport,$compt
$compt=50
$swport=3260+($compt-1)/(50*2);加了括号
MsgBox(0, "", $compt&"   "&Round($swport))

结果3260 结果又正确了???

将compt变量改成51 问题就又出来了
批处理的是 3262 ???
计算器 3260
乘法不带括号AU3 3262
乘法带括号AU3  3620

现在想请教的问题是
set /a swport=3260+(%compt%-1)/50*2

在AU3如何正确的表示。

请大家试了在回答。不然结果会不对批处理的结果的`~~、
每50算一个数

50
100
150


哦 忘了告诉 程序有多余的  迷惑下大家~~`

AU3的运算符 优先次序
NOT
    ^
    * /
    + -
    &
    < > <= >= = <> ==
    AND OR
 楼主| 发表于 2009-5-21 18:35:20 | 显示全部楼层
本帖最后由 lm959680 于 2009-5-21 18:36 编辑

哈哈  站位  `~~沙发要自己坐才舒服的`~~
发表于 2009-5-21 20:16:41 | 显示全部楼层
3260+(50-1)/50*2
=(50-1)/50*2+3260
=49/50*2+3260
=0.98*2+3260
=1.96+3260
=3261.96

你是怎么用计算器得到3260的?
至于批处理,分开运行就知道,set /a swport=(%compt%-1)/50的结果是0,原因是set不处理小数。
如果你要做到这个效果也很简单:
$swport=3260 + Int(($compt - 1) / 50) * 2
发表于 2009-5-21 22:14:38 | 显示全部楼层
加括号是违背原意的。
100/2*2=100
100/(2*2)=25
发表于 2009-5-21 23:09:42 | 显示全部楼层
头痛的算术
发表于 2009-5-21 23:16:40 | 显示全部楼层
试验了。
同意sensel朋友的见解。
 楼主| 发表于 2009-5-22 16:34:06 | 显示全部楼层
本帖最后由 lm959680 于 2009-5-22 16:39 编辑
3260+(50-1)/50*2
=(50-1)/50*2+3260
=49/50*2+3260
=0.98*2+3260
=1.96+3260
=3261.96

你是怎么用计算器得到3260的?
至于批处理,分开运行就知道,set /a swport=(%compt%-1)/50的结果是0,原因是set不处 ...
sensel 发表于 2009-5-21 20:16


谢了,一是自己不懂算  二是 不明白set 加“a” 后 怎么理解~~~  

莫非我从小学一直都是错的`~ 哈哈 我永远都成不了才`~~~
先括号在乘除 后加减

哦 还忘记了``也谢谢其他的朋友帮助和参与~~
发表于 2009-7-31 15:05:34 | 显示全部楼层
我现在看着都有点迷惑了!
发表于 2009-10-29 13:50:11 | 显示全部楼层
恩!学习了!!!!
您需要登录后才可以回帖 登录 | 加入

本版积分规则

QQ|手机版|小黑屋|AUTOIT CN ( 鲁ICP备19019924号-1 )谷歌 百度

GMT+8, 2024-5-18 14:11 , Processed in 0.075316 second(s), 20 queries .

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表