找回密码
 立即注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

楼主: snsj

[他山之石] 古代《算经》中的买鸡LISP算法

[复制链接]

已领礼包: 651个

财富等级: 财运亨通

发表于 2013-7-28 09:26:45 | 显示全部楼层
本帖最后由 天青色 于 2013-7-28 09:52 编辑
  1. ;求解百元买百鸡问题
  2. ;公鸡每只5元,母鸡每只3元,小鸡1元3只
  3. ;求公鸡、母鸡、小鸡各几只
  4. (defun c:chicken (/ cock hen chick cost)
  5.   (setq cock 1);cock从1开始
  6.   (while (< cock (/ 100 5)) ;cock最多20
  7.     (setq hen 1) ;hen从1开始
  8.     (while (< hen (/ 100 3)) ;hen最多33
  9.       (setq chick (- 100 cock hen));余额为chick
  10.       (setq cost (+ (* 5.0 cock) (* 3.0 hen) (/ chick 3.0)))
  11.       (if (= cost 100)
  12.         (progn
  13.           (princ (list "cock=" cock "hen= " hen "chick=" chick))
  14.           (princ "\n")
  15.         ) ;_ 结束progn
  16.       ) ;_ 结束if
  17.       (setq hen (+ hen 1))
  18.     ) ;_ 结束while
  19.     (setq cock (+ cock 1))
  20.   ) ;_ 结束while
  21.   (princ)
  22. ) ;_ 结束defun
命令: chicken
(cock= 4 hen=  18 chick= 78)
(cock= 8 hen=  11 chick= 81)
(cock= 12 hen=  4 chick= 84)

求解百元买百鸡问题.LSP

656 Bytes, 下载次数: 0, 下载积分: D豆 -1 , 活跃度 1

源码文件

评分

参与人数 1D豆 +5 收起 理由
Lispboy + 5 很给力!经验;技术要点;资料分享奖!

查看全部评分

论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2013-7-28 17:35:11 | 显示全部楼层
有趣的题目!!
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2013-7-28 18:15:44 | 显示全部楼层
本帖最后由 wowan1314 于 2013-7-28 18:19 编辑

除了遍历!还有其他方法吗?
  1. (defun c:t11 (/ a b c)
  2.     (setq a 1 b 1)
  3.     (while(< a 20)
  4.         (while (< b 33)
  5.             (if
  6.                 (and (> (setq c (- 100 (* a 5)(* b 3))) 0)
  7.                     (= (+ a b (* c 3) ) 100
  8.                     )
  9.                 )
  10.                 (mapcar 'print (list "--" a b (* c 3))
  11.                 )
  12.             )
  13.             (setq b (1+ b))
  14.         )
  15.         (setq a (1+ a) b 1)
  16.     )
  17.     (princ )
  18. )
命令: T11
"--"
4
18
78
"--"
8
11
81
"--"
12
4
84
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|申请友链|Archiver|手机版|小黑屋|辽公网安备|晓东CAD家园 ( 辽ICP备15016793号 )

GMT+8, 2025-9-28 12:55 , Processed in 0.294740 second(s), 35 queries , Gzip On.

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

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