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

[其他] 【已解决】批处理for,if语句出问题

本帖最后由 看电池 于 2021-8-19 14:43 编辑

想把·坐标区分为45个分区,全用if太肝,所以用了for,if可wz却没有值(xy就是随机的坐标)
  1. :p1
  2. data\patch\t.exe 0 -1 1
  3. set /a X=%g1:~0,-3%
  4. set /a Y=%g1%-1000*%X%
  5. set w1=0
  6. set zx=4
  7. set zy=5
  8. for /l %%i in (0 1 5) do (
  9. set /a zy1=!zy!+4
  10. for /l %%i in (0 1 9) do (
  11. set /a zx1=!zx!+7
  12. set /a w1=!w1!+1
  13. if !x! geq !zx! if !x! leq !zx1! if !y! geq !zy! if !y! leq !zy1! set wz=!w1!
  14. )
  15. )
  16. echo !wz!
  17. pause
  18. goto p1
复制代码
为什么说我在做无用的东西呢

回复 6# 看电池


    还是老办法,你觉得哪一行不应该是零,就再它上面一行加个echo观察一下到底是哪个环节出了问题。
我帮忙写的代码不需要付钱。如果一定要给,请在微信群或QQ群发给大家吧。
【微信公众号、微信群、QQ群】http://bbs.bathome.net/thread-3473-1-1.html
【支持批处理之家,加入VIP会员!】http://bbs.bathome.net/thread-67716-1-1.html

TOP

回复 5# Batcher


    谢谢问题得到部分解决,但只能显示第一行序号,但其他行都是零是怎么回事啊
  1. :p2
  2. cls
  3. echo 请放置
  4. data\patch\t.exe 0 -1 1
  5. set g1=%errorlevel%
  6. set /a x=%g1:~0,-3%
  7. set /a y=%g1%-1000*%X%
  8. set w1=0
  9. set wz=0
  10. set zx=4
  11. set zy=1
  12. set zy1=5
  13. set zx1=11
  14. for /l %%i in (0 1 5) do (
  15. set /a zy=!zy!+4
  16. set /a zy1=!zy1!+4
  17. for /l %%i in (0 1 9) do (
  18.   set /a zx1=!zx1!+7
  19.   set /a zx=!zx!+7
  20.   set /a w1=!w1!+1
  21. if !x! geq !zx! if !x! leq !zx1! if !y! geq !zy! if !y! leq !zy1! set wz=!w1!
  22. )
  23. )
  24. echo !x!,!y!
  25. echo !wz!
  26. pause
  27. goto p2
复制代码
为什么说我在做无用的东西呢

TOP

回复 1# 看电池


1、启用变量延迟扩展
2、在第13行命令上面加一行观察一下那几个变量的值自己算算if条件可能为真吗
  1. echo !x! geq !zx! if !x! leq !zx1! if !y! geq !zy! if !y! leq !zy1!
复制代码
我帮忙写的代码不需要付钱。如果一定要给,请在微信群或QQ群发给大家吧。
【微信公众号、微信群、QQ群】http://bbs.bathome.net/thread-3473-1-1.html
【支持批处理之家,加入VIP会员!】http://bbs.bathome.net/thread-67716-1-1.html

TOP

回复 3# cmd1152


什么问题啊?
为什么说我在做无用的东西呢

TOP

if命令有问题
梦依旧在,只是,心有余而力渐有不足
年年岁岁花相似,岁岁年年人不同

TOP

  1. setlocal enabledelayedexpansion
复制代码
梦依旧在,只是,心有余而力渐有不足
年年岁岁花相似,岁岁年年人不同

TOP

返回列表