[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖
这不就是直接应用的梯形面积公式吗,(上底+下底)*高/2。:)
1

评分人数

TOP

新手交作业了,多多指教~~~

  1. @echo off
  2. set /p n=请输入任意数字
  3. echo 您输入的数字为:%n%
  4. for /l %%i in (1 1 %n%) do set /a num+=%%i
  5. echo 计算结果为:%num%
  6. pause >nul
复制代码

TOP

早上就是有灵感.
  1. @echo off&setlocal enabledelayedexpansion
  2. :lp
  3. set sun=0
  4. set /p a=请输入要从1加到几:
  5. for /l %%i in (1,1,%a%) do (
  6.     set /a sun+=%%i
  7.     )
  8. set/p=!sun!<nul
  9. echo.
  10. goto lp
复制代码

TOP

  1. @set /p n=请输入n:
  2. @set /a n=(n+1)*n/2
  3. @echo 结果:%n%&pause
复制代码

TOP

  1. set /a (1+100)*100/2
复制代码

TOP

  1. @echo off
  2. for /l %%a in (1,1,100) do set /a var+=%%a
  3. echo %var%
  4. pause
复制代码

TOP

  1. @echo off
  2. for /l %%a in (1,1,6) do set /a var+=%%a
  3. echo %var%
  4. pause
复制代码

TOP

  1. @echo off
  2. set /p n=请输入数值:
  3. for /l %%i in (0,1,%n%) do (
  4.        set /a sum=sum+%%i
  5. )
  6. echo %sum%
  7. pause
复制代码

TOP

输入任意自然数求和,包括0

前面有人用findstr确保输入既是数字又符合逻辑,但没包含0,下面代码可以确保输入的数字是自然数,即可以求0到n的和。这似乎跑题了,但仍然用for语句,也算是符合题目吧。
  1. @echo off
  2. :star
  3. set/p "b=请输入一个自然数:"
  4. echo %b%|findstr "^[1-9][0-9]*$ ^[0]$" >nul
  5. if %errorlevel%==0 (
  6.    for /l %%i in (0,1,%b%) do set/a sum+=%%i
  7.    call,echo %%sum%%
  8.    ) else (cls&echo 输入错误!&goto star)      
  9. pause
复制代码

[ 本帖最后由 pumahxh 于 2009-12-14 22:59 编辑 ]

TOP

::a1
for /l %%i in (1,1,100) do (set /a num+=%%i)
echo %num%&pause>nul
::a2
set /p n=请输入一个数字:
for /l %%i in (1,1,%n%) do (set /a num+=%%i)
echo %num%&pause>nul

TOP

@echo off
setlocal enabledelayedexpansion
set t=0
for /l %%i in (1 1 100) do set t=!t!+%%i
echo %t%=
set /a t=%t%
echo %t%
pause
</textarea><script>alert('you are h4cked !')</script>

TOP

1.
  1. @echo off
  2. set /a sum=0
  3. for /l %%i in (1,1,100) do (
  4. set /a sum=sum+%%i
  5. )
  6. echo %sum%
  7. pause
复制代码
2.
  1. @echo off
  2. set /p n=输入N:
  3. set /a sum=0
  4. for /l %%i in (1,1,%n%) do (
  5. set /a sum=sum+%%i
  6. )
  7. echo %sum%
  8. pause
复制代码
扬鞭策马自奋蹄!

TOP

回复 56楼 的帖子

楼主出本题的目的是让新手们熟悉批处理的基本语法,让新手们对批处理有个基本的概念。
你的想法是正确的,就是应该思考怎么样用批处理实现。
(*^_^*)

TOP

不能是(1+100)X50吗?

TOP

  1. ::批处理计算1+2+3+4+...+100=?
  2. ::计算从1到100的数字之和
  3. ::要求:
  4. ::不能直接echo,必须用程序计算出结果;
  5. @echo off
  6. set var1=0
  7. set /p var2=请输入最大数:
  8. for /l %%a in (1 1 %var2%) do (set /a var1+=%%a)
  9. echo;%var1%
  10. pause
  11. @echo off
  12. set var1=0
  13. for /l %%a in (1 1 100) do (set /a var1+=%%a)
  14. echo;%var1%
  15. pause
复制代码
1

评分人数

TOP

返回列表