批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程
[批处理文件精品]批处理版照片整理器[批处理文件精品]纯批处理备份&还原驱动在线第三方下载
返回列表 发帖

寻找电脑高手.............

找个电脑高手当师傅,有意的加236788798..............流言啊.............................

TOP

【程序21】
题目:猴子吃桃问题:猴子第一天摘下若干个桃子,当即吃了一半,还不瘾,又多吃了一个
   第二天早上又将剩下的桃子吃掉一半,又多吃了一个。以后每天早上都吃了前一天剩下
   的一半零一个。到第10天早上想再吃时,见只剩下一个桃子了。求第一天共摘了多少。
1.程序分析:采取逆向思维的方法,从后往前推断。
代码:
  1. @echo off&setlocal EnableDelayedExpansion
  2. set a=0
  3. for /l %%i in (1,1,10) do (
  4. set /a a=a*2+1
  5. echo 倒数第%%i天时有!a!个桃子)
  6. pause
复制代码


答案竟然是1023!
这猴子太会吃了吧

[ 本帖最后由 huajinghua 于 2008-4-11 19:51 编辑 ]
【新青年世界】
windows+R
cmd
start http:/hi.baidu.com/huajinghua

TOP

【程序25】
题目:求1+2!+3!+...+20!的和
1.程序分析:此程序只是把累加变成了累乘。
代码:
  1. @echo off&setlocal EnableDelayedExpansion
  2. set a=1
  3. set b=0
  4. for /l %%i in (1,1,20) do (
  5. set /a a=!a! * %%i
  6. set /a b=!b!+!a!
  7. )
  8. echo 20的累积为:!b!
  9. pause
复制代码
【新青年世界】
windows+R
cmd
start http:/hi.baidu.com/huajinghua

TOP

【程序30】
题目:一个5位数,判断它是不是回文数。即12321是回文数,个位与万位相同,十位与千位相同。
指定5位数,是不是太容易了,来个可以是任意位数的。
:
  1. @echo off&setlocal EnableDelayedExpansion
  2. set /p nnn=请输入一个数 &cls
  3. set mmm=%nnn%
  4. :loop
  5. set bbb=%mmm:~0,1%%bbb%
  6. set mmm=%mmm:~1%
  7. if not "%mmm%"=="" goto loop
  8. if "%bbb%"=="%nnn%" (echo %nnn% 是回文数) else echo %nnn% 不是回文数
  9. pause
复制代码
技术问题请到论坛发帖求助!

TOP

【程序80】
题目:海滩上有一堆桃子,五只猴子来分。第一只猴子把这堆桃子凭据分为五份,多了一个,这只
   猴子把多的一个扔入海中,拿走了一份。第二只猴子把剩下的桃子又平均分成五份,又多了
   一个,它同样把多的一个扔入海中,拿走了一份,第三、第四、第五只猴子都是这样做的,
   问海滩上原来最少有多少个桃子?
和程序80差不多的题目。稍加改动即可
  1. @echo off&setlocal EnableDelayedExpansion
  2. set a=0
  3. for /l %%i in (1,1,5) do (
  4. set /a a=a*5+1
  5. )
  6. echo 最少要!a!只桃子
  7. pause
复制代码
【新青年世界】
windows+R
cmd
start http:/hi.baidu.com/huajinghua

TOP

第9题
  1. @echo off &setlocal enabledelayedexpansion
  2. for /l %%i in (1,1,8)do (
  3. for /l %%j in (1,1,8) do (
  4. set /a n=%%i+%%j,n=n%%2
  5. if !n! equ 1 (set/p=■<nul) else (set/p=  <nul)
  6. )
  7. echo.
  8. )
  9. pause>nul
复制代码

TOP

第20题,因为批处理不能处理小数所以得出的结果不精确
  1. @echo off
  2. set n=100
  3. for /l %%i in (1,1,10) do (set /a n/=2,ns+=n)
  4. echo 共经过%ns%米 第10次反弹%n%米
  5. pause>nul
复制代码

TOP

第20题

程序20.
10米高的小球经每次弹跳后高度为原来的一半,经过10此后的高度?

由于批处理不能处理小数,所以我们可以让他变成整数,下面是我突然之间想到的。呵呵

@echo off&setlocal EnableDelayedExpansion
set a=10
for /l %%i in (1,1,10) do (
set /a a=!a!*10
set /a a=!a!/2
)
set b=0000000000!a!
set c=!b:~-10!
echo 经过10次反弹后的高度为:0.!c!米
pause
【新青年世界】
windows+R
cmd
start http:/hi.baidu.com/huajinghua

TOP

原帖由 huajinghua 于 2008-4-11 21:55 发表
【程序80】
题目:海滩上有一堆桃子,五只猴子来分。第一只猴子把这堆桃子凭据分为五份,多了一个,这只
   猴子把多的一个扔入海中,拿走了一份。第二只猴子把剩下的桃子又平均分成五份,又多了
   一个, ...


解法与题意有点不太对。。
那位高手能给正确答案。。。

[ 本帖最后由 yharvey 于 2008-4-18 16:26 编辑 ]

TOP

【程序69】
题目:有n个人围成一圈,顺序排号。从第一个人开始报数(从1到3报数),凡报到3的人退出
   圈子,问最后留下的是原来第几号的那位。
  1. @echo off&setlocal enabledelayedexpansion
  2. for /l %%a in (100 -1 1) do set "kk= %%a !kk!"
  3. :main
  4. set "ie=0"
  5. for %%a in (%kk%) do set /a ie+=1
  6. if %ie% neq 1 call :st
  7. echo %kk%
  8. pause&exit
  9. :st
  10. for %%a in (%kk%) do (
  11.         set /a num+=1
  12.         if !num! equ 3 (
  13.                 set "num=0"
  14.                 set "kk=!kk: %%a =!
  15.             )
  16.     )
  17. goto main
复制代码

[ 本帖最后由 ieutk 于 2008-4-18 18:31 编辑 ]
不大可能的事也许今天实现,根本不可能的事也许明天会实现

TOP

向前辈学习学习。。。
楼上的结果很对。。。
可能结果:3121
猴子拿的:624,499,399,319,255
可能结果:6246
猴子拿的:1249,999,799,639,511

TOP

晕,不会批处理,不过如果用C语言做的话,我立马就能全部写出来,呵呵

TOP

第1题

set var1=!str:%%a =!
能猜到是设置var1为除了%%a以外的值,

但是这个!str:%%a =!具体是怎么用的阿,哪位高手能给解释下

TOP

原帖由 freshlin 于 2008-6-27 17:19 发表
set var1=!str:%%a =!
能猜到是设置var1为除了%%a以外的值,

但是这个!str:%%a =!具体是怎么用的阿,哪位高手能给解释下






set var1=!str:%%a =!  是把变量str的值中的 %%a和后面的一空格 替换为空,并把替换后的值赋予var1
不大可能的事也许今天实现,根本不可能的事也许明天会实现

TOP

我也正困惑这个!str:%%a =!
!~~~!是替换的意思吗
我在别的地方也看到"!"有其他用法
哎!头都大了!能不能系统讲一下  !    的用法啊

TOP

返回列表