[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖

[数值计算] [已解决]怎么将调用powershell计算加减乘除和N次方批处理结合起来用?

本帖最后由 m91opse 于 2018-6-14 01:02 编辑

怎么将这2套调用powershell批处理结合起来用,可以加减乘除,又可以n次方后在加减乘除。
第一套批处理
  1. @echo off
  2. set /p a=a数值:
  3. set /p n=n次方:
  4. powershell [math]::pow(%a%,%n%) #math
  5. pause
复制代码
第二套批处理
  1. @echo off
  2. set /p a=a的值:
  3. set /p b=b的值:
  4. set /p c=c的值:
  5. echo.
  6. set /p="(%a%/1.528*1.3+%b%+%c%)*1.0348= "<nul
  7. powershell -c "(%a%/1.528*1.3+%b%+%c%)*1.0348"
  8. pause>nul
复制代码
比如说:要计算 0.1*10的3次方=结果
可是,上面2套批处理只能单独计算N次方,或者单独计算四则运算。怎么结合这2个批处理,使其能运算好N次方在四则运算,得出结果。
1

评分人数

    • Batcher: 感谢给帖子标题标注[已解决]字样PB + 2

  1. @echo off
  2. set /p a=a数值:
  3. set /p b=b数值:
  4. set /p n=n次方:
  5. powershell [math]::pow(%a%*%b%,%n%)
  6. pause
复制代码
直接把四则运算表达式放到pow函数的第一个参数里面就行了
1

评分人数

我帮忙写的代码不需要付钱。如果一定要给,请在微信群或QQ群发给大家吧。
【微信公众号、微信群、QQ群】http://bbs.bathome.net/thread-3473-1-1.html
【支持批处理之家,加入VIP会员!】http://bbs.bathome.net/thread-67716-1-1.html

TOP

本帖最后由 m91opse 于 2018-6-14 00:27 编辑

大哥,这个批处理有个问题,比如 0.1*10的3次方 按照大哥批处理的计算顺序,她是先0.1*10得出结果,在去计算立方,最后结果等于1
而问题出来了,如果是先计算开方10的3次方结果等于1000了,在乘以0.1最后结果等于100 这样大哥这个问题怎么解决啊?
  1. @echo off
  2. set /p a=a数值:
  3. set /p b=b数值:
  4. set /p n=n次方:
  5. set /p="%a%*%b%的%n%次方= "<nul
  6. powershell [math]::pow(%b%,%n%)*%a%
  7. pause
复制代码
经过,乱搞,这样也可以的,哈哈

TOP

本帖最后由 m91opse 于 2018-6-14 01:03 编辑

powershell [math]::pow(%a%*%b%,%n%)这个命令和下面的命令

powershell [math]::pow(%b%,%n%)*%a%

如果是 0.1*10的3次方*12+10的-2次方,这个怎么解决啊?

要怪,也只能怪批处理和ps 还有vbs都太有局限性了。唉。。。。。。
  1. @echo off
  2. set /p a=a数值:
  3. set /p b=b数值:
  4. set /p n=n次方:
  5. set /p="%a%*%b%的%n%次方= "<nul
  6. powershell %a%*[math]::pow(%b%,%n%)
  7. pause
复制代码
找了一下,功夫不负有心人,这样也ok了,楼上大哥666

TOP

返回列表