中国DOS联盟论坛

中国DOS联盟

-- 联合DOS 推动DOS 发展DOS --

联盟域名:www.cn-dos.net  论坛域名:www.cn-dos.net/forum
DOS,代表着自由开放与发展,我们努力起来,学习FreeDOS和Linux的自由开放与GNU精神,共同创造和发展美好的自由与GNU GPL世界吧!

游客:  注册 | 登录 | 命令行 | 会员 | 搜索 | 上传 | 帮助 »
« [1] [2] »
作者:
标题: [出题]bat应用 上一主题 | 下一主题
pusofalse
银牌会员




积分 1604
发帖 646
注册 2008-4-13
状态 离线
『楼 主』:  [出题]bat应用

鸡兔同笼而不识其各自数量,数头3600,数脚12000,求多少只兔子,多少只鸡。



心绪平和,眼藏静谧,无比安稳的火... Purification of soul...Just a false...^_^
2008-7-14 19:10
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
26933062
银牌会员





积分 2268
发帖 879
注册 2006-12-19
状态 离线
『第 2 楼』:  

完全没有思路,这怎么算啊?



致精致简!
2008-7-14 19:21
查看资料  发短消息 网志   编辑帖子  回复  引用回复
pusofalse
银牌会员




积分 1604
发帖 646
注册 2008-4-13
状态 离线
『第 3 楼』:  

26933062前辈还真是会开玩笑,你若不会,还有谁会?~
不好意思,我本想配合你的玩笑的。。。^_^



心绪平和,眼藏静谧,无比安稳的火... Purification of soul...Just a false...^_^
2008-7-14 19:23
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
26933062
银牌会员





积分 2268
发帖 879
注册 2006-12-19
状态 离线
『第 4 楼』:  

根本没法考虑bat问题,因为我根本就不知道怎么去算。



致精致简!
2008-7-14 19:33
查看资料  发短消息 网志   编辑帖子  回复  引用回复
HAT
版主





积分 9023
发帖 5017
注册 2007-5-31
状态 离线
『第 5 楼』:  


@echo off
setlocal enabledelayedexpansion
echo 我正在想。。。
set a=3600
set b=12000
set x=1
:loop
set /a f=2*!x!+4*(%a%-!x!)
set j=!x!
set /a t=%a%-!x!
if %f% equ %b% (
  echo 鸡:%j% 兔:%t%
  pause
  goto :eof
)
set /a x+=1
if !x! lss %a% (
  goto :loop
)


   此帖被 +5 点积分      点击查看详情   
评分人:【 pusofalse 分数: +5  时间:2008-7-14 20:05




2008-7-14 19:59
查看资料  发短消息 网志   编辑帖子  回复  引用回复
pusofalse
银牌会员




积分 1604
发帖 646
注册 2008-4-13
状态 离线
『第 6 楼』:  

高!~ 其实前辈的代码不用延迟也可以啊~
我用了个投机取巧的方法,取其公约数,得出正确结果后在后面补0。。。

[ Last edited by pusofalse on 2008-7-14 at 08:09 PM ]



心绪平和,眼藏静谧,无比安稳的火... Purification of soul...Just a false...^_^
2008-7-14 20:07
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
HAT
版主





积分 9023
发帖 5017
注册 2007-5-31
状态 离线
『第 7 楼』:  

刚开始想太复杂了,开了延迟扩展,后来贴代码的时候忘了删掉,见谅:)



2008-7-14 20:14
查看资料  发短消息 网志   编辑帖子  回复  引用回复
26933062
银牌会员





积分 2268
发帖 879
注册 2006-12-19
状态 离线
『第 8 楼』:  

给 5 楼 缩水
我只能干体力活了。
:
@echo off
:loop
set /a x+=1,f=2*x+4*(3600-x),j=x,t=3600-x
if %f% neq 12000 goto :loop
echo 鸡:%j%     兔:%t%
pause


   此帖被 +5 点积分      点击查看详情   
评分人:【 pusofalse 分数: +5  时间:2008-7-14 20:44




致精致简!
2008-7-14 20:35
查看资料  发短消息 网志   编辑帖子  回复  引用回复
pusofalse
银牌会员




积分 1604
发帖 646
注册 2008-4-13
状态 离线
『第 9 楼』:  

汗。。。没思路,这么精简。赞佩!~

[ Last edited by pusofalse on 2008-7-14 at 08:43 PM ]



心绪平和,眼藏静谧,无比安稳的火... Purification of soul...Just a false...^_^
2008-7-14 20:42
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
26933062
银牌会员





积分 2268
发帖 879
注册 2006-12-19
状态 离线
『第 10 楼』:  

这个题我完全不会算,在qq里请教了5楼,他写出了代码,我只是把他的代码精简了一下而以。



致精致简!
2008-7-14 20:44
查看资料  发短消息 网志   编辑帖子  回复  引用回复
pusofalse
银牌会员




积分 1604
发帖 646
注册 2008-4-13
状态 离线
『第 11 楼』:  



  Quote:
Originally posted by 26933062 at 2008-7-14 08:44 PM:
这个题我完全不会算,在qq里请教了5楼,他写出了代码,我只是把他的代码精简了一下而以。

我觉得你在说谎,这题无论如何也难不倒你的。。。



心绪平和,眼藏静谧,无比安稳的火... Purification of soul...Just a false...^_^
2008-7-14 20:47
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
bat-zw
金牌会员

永远的学习者


积分 3105
发帖 1276
注册 2008-3-8
状态 离线
『第 12 楼』:  

来个小学版的,不要循环:
@echo off
set /a a=(3600*4-12000)/2
set /a b=3600-a
echo 兔子%b%只,鸡%a%只。&pause>nul


   此帖被 +12 点积分      点击查看详情   
评分人:【 pusofalse 分数: +7  时间:2008-7-15 14:46
评分人:【 26933062 分数: +5  时间:2008-7-15 17:23




批处理之家新域名:www.bathome.net
2008-7-15 13:49
查看资料  发送邮件  发短消息 网志  OICQ (841615149)  编辑帖子  回复  引用回复
pusofalse
银牌会员




积分 1604
发帖 646
注册 2008-4-13
状态 离线
『第 13 楼』:  



  Quote:
Originally posted by zw19750516 at 2008-7-15 01:49 PM:
来个小学版的,不要循环:
@echo off
set /a a=(3600*4-12000)/2
set /a b=3600-a
echo 兔子%b%只,鸡%a%只。&pause>nul

厉害。。。这思路。。。简直五体投地了。



心绪平和,眼藏静谧,无比安稳的火... Purification of soul...Just a false...^_^
2008-7-15 14:46
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
bat-zw
金牌会员

永远的学习者


积分 3105
发帖 1276
注册 2008-3-8
状态 离线
『第 14 楼』:  



  Quote:
厉害。。。这思路。。。简直五体投地了。


     这道题其实就是小学数学里的鸡兔问题,下面讲一下解题思路吧(晕,有点小
学数学老师的感觉):
   先假设3600只全部是兔子,那么就会有3600*4=144000只脚,144000-
12000就比实际多出了2400只脚,现在反过来想如果将3600只里的n只兔子换成
为n只鸡就能使脚总数正好等于12000只,而每只兔子比每只鸡多两只脚,于是
n=2400/2=1200只,也就是说将3600只兔子里的1200只换成为鸡,脚的总数正
好为12000只,于是,此题便解出来了:兔子2400只,鸡1200只。
     同时,还可以先假设3600只全部是鸡,12000-3600*2/(4-2)得出要替换为
兔子的鸡为2400只,剩下的鸡为1200只。




批处理之家新域名:www.bathome.net
2008-7-15 17:13
查看资料  发送邮件  发短消息 网志  OICQ (841615149)  编辑帖子  回复  引用回复
26933062
银牌会员





积分 2268
发帖 879
注册 2006-12-19
状态 离线
『第 15 楼』:  



  Quote:
Originally posted by zw19750516 at 2008-7-15 13:49:
来个小学版的,不要循环:
@echo off
set /a a=(3600*4-12000)/2
set /a b=3600-a
echo 兔子%b%只,鸡%a%只。&pause>nul

真是一个比一个强!



致精致简!
2008-7-15 17:24
查看资料  发短消息 网志   编辑帖子  回复  引用回复
« [1] [2] »
请注意:您目前尚未注册或登录,请您注册登录以使用论坛的各项功能,例如发表和回复帖子等。


可打印版本 | 推荐给朋友 | 订阅主题 | 收藏主题



论坛跳转: