标题: [代码合集] [转载资料]用批处理作趣味数学题 [打印本页]
作者: garyng 时间: 2011-10-11 13:31 标题: [转载资料]用批处理作趣味数学题
在CN-DOS混过的一定知道有zouzhxi大大在2006-11-12 08:20 AM发出的“趣味数学题”吧!(很可惜我没有机会到那里混混~)
这资料在 CN-DOS批处理精华贴 里找到的
这么好的东西竟然没有人发出来?(我在这里找不到~)
整理了下,便把它发出来了~
顺便把还未解决的问题贴出来:
#23 ?
称珠子=
有243颗外形一模一样的珠子,其中有一颗稍重一点。用一架没有砝码的天平,至少称几次才能找出这颗珠子来?
#24 ?
坐井观天的青蛙=
坐井观天的那只青蛙一天突然心血来潮,想到外面的世界去看看,井深九尺,青蛙一次只能蹦三尺高,如果这样青蛙要蹦几次才能跳出井口呢?
#25 ?
鸡狗各多少=
小鸡、小狗七十九,二百只脚在地上走,想一想,算一算,多少只鸡?多少只狗?
#26 ?
大、小和尚各有几=
这是一道古算题:百个和尚百个粑,大和尚每人粑四个,小和尚四人一个粑,大、小和尚各有几?
再顺便发出我的代码(对不起,献丑了,有错误请指出)
25题:
- @echo off
- setlocal enabledelayedexpansion
- for /l %%i in (1 1 79) do (
- set d=%%i
- set /a c=79-!d!
- set /a l=!d!*4+!c!*2
- if !l!==200 echo 鸡有!c!只 狗有!d!只
- )
- pause
复制代码
26题:
- @echo off
- setlocal enabledelayedexpansion
- for /l %%i in (1 1 100) do (
- set b=%%i
- set /a s=100-!b!
- set /a r=!s!%%4
- if !r!==0 (
- set /a t=!b!*4+!s!/4
- if !t!==100 echo 大尚有!b!个人 小和尚有!s!个人
- )
- )
- pause
复制代码
作者: zaixinxiangnian 时间: 2011-10-11 20:32
非常好玩,考虑算法和脑力
作者: CrLf 时间: 2011-10-11 22:32
本帖最后由 CrLf 于 2011-10-11 22:46 编辑
- set d=%%i
- set /a c=79-!d!
- set /a l=!d!*4+!c!*2
复制代码
可以简化为- set /a c=79-%%i,l=%%i*4+c*2
复制代码
其实也可以不遍历,可以用方程组或者解鸡兔同笼的简洁优美的古算法
作者: garyng 时间: 2011-10-11 22:54
回复 3# CrLf
谢谢斑竹~长知识了~
欢迎光临 批处理之家 (http://bathome.net./) |
Powered by Discuz! 7.2 |