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

[数值计算] 显示10000以内的完全平方数

我想用
  1. @echo off
  2. for /l %%r in (1,1,100) do (
  3. set /a b=%%r*%%r
  4. echo %b%
  5. )
  6. pause
复制代码
显示10000以内的完全平方数,但结果却是“ECHO 处于关闭状态。”,请问这是怎么回事

回复 2楼 的帖子

请问变量b的前后加“!”是什么意思

TOP

回复 5楼 的帖子

原来如此!
谢了!

TOP

可以这样:
  1. @echo off
  2. for /l %%r in (1,1,100) do (
  3. set /a b=%%r*%%r
  4. call,echo %%b%%
  5. )
  6. pause
复制代码
***共同提高***

TOP

经测试,call调用或者call延迟都会存在效率问题。
如果在处理量多的情况下,建议用setlocal开启延迟。反之,处理量少时可以用call。
测试以下两段代码:
  1. @echo off
  2. ::用setlocal 延迟
  3. set t=%time%
  4. setlocal enabledelayedexpansion
  5. for /l %%a in (1 1 100) do set "var=000%%a"&echo !var:~-3!
  6. call :time0 "%t%" "%time%" "ok"
  7. echo.&echo 耗时: %ok%
  8. pause&exit/b
  9. :time0  以下为封装部分。
  10. :: code 随风 @bbs.bathone.cn 2008-08-15
  11. setlocal&set /a n=0
  12. for /f "tokens=1-8 delims=.: " %%a in ("%~1:%~2") do (
  13.    set /a n+=10%%a%%100*360000+10%%b%%100*6000+10%%c%%100*100+10%%d%%100
  14.    set /a n-=10%%e%%100*360000+10%%f%%100*6000+10%%g%%100*100+10%%h%%100
  15. )
  16. set "n=%n:-=%"
  17. set /a s=n/360000,n=n%%360000,f=n/6000,n=n%%6000,m=n/100,n=n%%100
  18. set "ok=%s% 小时 %f% 分钟 %m% 秒 %n% 毫秒"
  19. endlocal&set "%~3=%ok%"&goto :eof
复制代码
  1. @echo off
  2. :: 用call延迟
  3. set t=%time%
  4. for /l %%a in (1 1 100) do set "var=000%%a"&call echo %%var:~-3%%
  5. call :time0 "%t%" "%time%" "ok"
  6. echo.&echo 耗时: %ok%
  7. pause&exit/b
  8. :time0  以下为封装部分。
  9. :: code 随风 @bbs.bathone.cn 2008-08-15
  10. setlocal&set /a n=0
  11. for /f "tokens=1-8 delims=.: " %%a in ("%~1:%~2") do (
  12.    set /a n+=10%%a%%100*360000+10%%b%%100*6000+10%%c%%100*100+10%%d%%100
  13.    set /a n-=10%%e%%100*360000+10%%f%%100*6000+10%%g%%100*100+10%%h%%100
  14. )
  15. set "n=%n:-=%"
  16. set /a s=n/360000,n=n%%360000,f=n/6000,n=n%%6000,m=n/100,n=n%%100
  17. set "ok=%s% 小时 %f% 分钟 %m% 秒 %n% 毫秒"
  18. endlocal&set "%~3=%ok%"&goto :eof
复制代码
心绪平和,眼藏静谧。

TOP

返回列表