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

批处理计算1+2+3+4+...+100=?

[复制链接]
发表于 2011-12-13 22:07:33 | 显示全部楼层
长见识了,的确长见识了
发表于 2012-2-18 15:51:26 | 显示全部楼层
1
  1. @echo off
  2. for /l %%a in (1,1,100) do set /a a+=%%a
  3. echo %a%
复制代码
2

  1. @echo off
  2. set /p n=请输入n的值:
  3. for /l %%a in (1,1,%n%) do set /a a+=%%a
  4. echo %a%
复制代码
发表于 2012-5-28 15:12:44 | 显示全部楼层
头尾各一半 × 项数
  1. @echo off
  2. set start=1
  3. set n=100
  4. set different=1
  5. echo 公差:%different%
  6. echo 项数:%n%
  7. echo 头:%start%
  8. set /a last = %start%+%n%*%different%-1
  9. echo 尾:%last%
  10. set /a sum=(%start%+%last%)*%n%/2
  11. echo 和:%sum%
  12. pause
复制代码
发表于 2012-10-16 20:42:06 | 显示全部楼层

  1. @echo off
  2. set num=0
  3. :main
  4. set /p n=请输入最终要累加到的数
  5. if n leq 1 goto error
  6. for /l %%i in (1,1,%n%) do (set /a num=num+%%i )
  7. echo sum=%num%
  8. pause & exit
  9. :error
  10. echo 数字输入不能小于1
  11. pause
  12. cls
  13. goto main
  14. pause
复制代码
发表于 2012-12-14 22:27:06 | 显示全部楼层
@echo off
setlocal enabledelayedexpansion
for /l %%a in (1 1 100) do (
   set "str=!str!%%a+"
)
set /a str=%str:~0,-1%
echo %str%

pause
发表于 2013-1-1 15:05:24 | 显示全部楼层
本帖最后由 zzpsongs 于 2013-1-1 15:08 编辑
  1. @echo off
  2. :on
  3. echo 1+2+……+N=?
  4. set/p n=[请输入N值]^>
  5. set/a fin=%n%*(%n%+1)/2
  6. echo 1+2+……+N=%fin% (N=%n%)
  7. echo ------------------------------
  8. goto on
复制代码
回帖后才发现,原来是for的应用。。。。
发表于 2013-1-5 15:28:07 | 显示全部楼层
回复 12# vicp7764


    假如他输入023呢,好像要写一个来排除0,就好像输入023,计算机只读入23.。。。但是我想不到怎样解决
发表于 2013-1-31 21:52:36 | 显示全部楼层
回复 129# bat爱好者
  1. @echo off
  2. setlocal enabledelayedexpansion
  3. set num=0230056
  4. set n=0
  5. :loop
  6. if "!num:~%n%,1!" equ "0" (
  7.   set /a n+=1
  8.   goto loop
  9. )
  10. set num=!num:~%n%!
  11. echo %num%
  12. pause
复制代码
发表于 2013-5-22 11:35:11 | 显示全部楼层
回复 12# vicp7764


    set /a 是什么意思
我用set sum=sum+%%i 就不对  要set /a sum=sum+%%i 才对 ,这是为什么
发表于 2017-2-11 22:50:12 | 显示全部楼层
本帖最后由 taofan712 于 2017-2-11 22:53 编辑
  1. @echo off
  2. setlocal enabledelayedexpansion
  3. :loop
  4. set var=
  5. set s=
  6. set b=
  7. echo;计算两个自然数之间(包括这两个数)所有连续自然数的和。
  8. set /p var=请输入两个不同的自然数(空格隔开)
  9. for /f "tokens=1,2 delims= " %%a in ("%var%") do (
  10. if "%%a" lss "%%b" ( set /a s=%%a & set /a b=%%b
  11. ) else (
  12. set /a s=%%b & set /a b=%%a )
  13. set /a "sum=(!s!+!b!)*(!b!-!s!+1)/2"
  14. echo;!sum! )
  15. pause>nul & cls & goto loop
复制代码
发表于 2017-3-4 12:31:17 | 显示全部楼层
@echo off
setlocal enabledelayedexpansion
set /p n=Input a number:
set i=1
:plus
if %i% leq %n% (
   set /a sum=!sum!+!i!
   set /a i=!i!+1
   goto :plus
)
echo sum:%sum%
pause
发表于 2017-3-4 13:53:13 | 显示全部楼层
把BX的值用自带的计算器转成10进制即可。
只支持32位系统。
附一贴:http://www.bathome.net/thread-43372-1-1.html

  1. %老刘制作-数值递增相加%
  2. %注:寄存器里的数为2进制,显示出来的为16进制%
  3. %BX的值为递增的值,AX为递增数.%
  4. @echo off
  5. set /p var=Please input a Number:
  6. >%TMP%\DEBUGASM.TMP (
  7.         echo a100
  8.         echo mov ax,0
  9.         for /l %%a in (1 1 %var%) do (
  10.                 echo inc ax
  11.                 echo add bx,ax
  12.         )
  13.         echo.
  14.         for /l %%a in (-%var% 1 %var%) do echo T
  15.         echo.
  16.         echo q
  17.         echo q
  18. )
  19. <%TMP%\DEBUGASM.TMP DEBUG|Find /v ""|Find "CX"
  20. DEL /F %TMP%\DEBUGASM.TMP
  21. pause&exit/b
复制代码

评分

参与人数 1技术 +1 收起 理由
taofan712 + 1 感谢分享

查看全部评分

发表于 2017-3-28 20:18:06 | 显示全部楼层
@echo off
set n=1
set /p n=input a number!
for /l %%i in (1,1,%n%) do (
    set /a sum+=%%i
)
echo %sum%
pause

评分

参与人数 1技术 +1 收起 理由
老刘1号 + 1 鼓励下

查看全部评分

发表于 2017-4-3 08:00:45 | 显示全部楼层
@echo off
set n=1
set /p n=input a number!
for /l %%i in (1,1,%n%) do (
    set /a sum+=%%i
)
echo %sum%
pause
发表于 2017-5-15 20:29:26 | 显示全部楼层
回复 15# yaohaixu


    这个批处理写的好玩
您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|手机版|小黑屋|批处理之家 ( 渝ICP备10000708号 )

GMT+8, 2026-3-17 01:45 , Processed in 0.023357 second(s), 8 queries , File On.

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

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