中国DOS联盟论坛

中国DOS联盟

-- 联合DOS 推动DOS 发展DOS --
联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum
游客 | 登录 | 注册 | 会员 | 搜索 | 中国DOS联盟
中国DOS联盟论坛
现在时间是 2026-08-10 13:03
47,811 主题排行 / 349,897 发帖 / 今日 0 篇 / 48,255 会员排行
DOS批处理 & 脚本技术(批处理室) » cmd 计算能力很弱
可打印版本  1,673 / 11
第1楼 6622186 发表于 2007-03-10 01:35
高级用户 发帖 411 积分 894
cmd 计算能力很弱
set /a 可用于计算, 但功能很弱, 不支持乘方, 比起其它高级语言来, 差多了.
第2楼 namejm 发表于 2007-03-10 01:42
荣誉版主 发帖 1,737 积分 5,226 来自 成都
  CMD的计算能力确实比较弱:不直接支持小数的加减乘除。但是,也并非像你所说的那样不中用。

  乘方的代码如下(没有做容错检测,已修正11楼指出的错误):

  更多的CMD运算,可以参考以下帖子:

  1、[共同参与][挑战思路][批处理处理浮点运算]
  2、批处理计算器

[ Last edited by namejm on 2007-3-9 at 07:46 PM ]
第3楼 jmz573515 发表于 2007-03-10 01:47
银牌会员 发帖 464 积分 1,212
namejm的回答不错,6622186的签名有个性。好!
第4楼 qjbm 发表于 2007-03-10 02:00
初级用户 发帖 44 积分 125
感觉楼主的意思是想说"开方".

也确实是如楼主所说.........

批处理并不适合担当复杂计算任务,

同样思路模式的批处理计算程序,与其他语言相比计算速度与效率低的惊人!

也许根本不应该把批处理来当作一种计算机语言,来进行比较.

[ Last edited by qjbm on 2007-3-9 at 01:07 PM ]
第5楼 electronixtar 发表于 2007-03-10 02:16
铂金会员 发帖 2,672 积分 7,493
Originally posted by 6622186 at 2007-3-10 01:35:
set /a 可用于计算, 但功能很弱, 不支持乘方, 比起其它高级语言来, 差多了.



但是人的智慧不受这些局限。用C++完成的任务用bat来完成,那就是激动人心的挑战!
第6楼 xycoordinate 发表于 2007-03-10 02:26
中级用户 发帖 228 积分 493 来自 安徽
@echo off
@set c= 不知则觉多,知则觉少,越知越多,便觉越来越少. --- 知多少.
@for,/l,%%i,in,(1,1,55)do,@call,set/p=%%c:~%%i,1%%<nul&ping/n 1 127.1>nul

签名是很NB!

请问:
第3行为什么用了那么多“,”???

我改成
@for /l %%i in (1,1,55) do @call set /p=%%c:~%%i,1%%<nul&ping/n 1 127.1>nul
也行?

谁能解释一下吗?

难道“,“可以替代” “???

[ Last edited by xycoordinate on 2007-3-9 at 01:30 PM ]
第7楼 kenshu 发表于 2007-03-10 02:29
新手上路 发帖 5 积分 10
看来就上好玩咯~呵呵 `
第8楼 electronixtar 发表于 2007-03-10 02:32
铂金会员 发帖 2,672 积分 7,493
Originally posted by xycoordinate at 2007-3-10 02:26:
@echo off
@set c= 不知则觉多,知则觉少,越知越多,便觉越来越少. --- 知多少.
@for,/l,%%i,in,(1,1,55)do,@call,set/p=%%c:~%%i,1%%<nul&ping/n 1 127.1>n ...


无奈何的……
第9楼 6622186 发表于 2007-03-10 07:13
高级用户 发帖 411 积分 894
re 六楼, "," 可作分隔符, 其它字符也可以, 比如"=".
第10楼 6622186 发表于 2007-03-10 07:19
高级用户 发帖 411 积分 894
二楼的代码可以, 谢谢!
第11楼 vkill 发表于 2007-03-10 08:01
金牌会员 发帖 1,744 积分 4,103 来自 甘肃.临泽
请输入底数:5
请输入指数:0


5 的 0 次方是 5
请按任意键继续. . .


呵呵,jm 兄忘记弄这个的过滤了
第12楼 namejm 发表于 2007-03-10 08:46
荣誉版主 发帖 1,737 积分 5,226 来自 成都
  确实是遗漏了这种情况,已经修正,多谢指出。
[ 联系联盟系统管理团队 - 中国DOS联盟 - 标准版 ]
Sponsored by ifanr Inc | © 2001–2023