注册 登录
明经CAD社区 返回首页

mahuan1279的个人空间 http://www.mjtd.com/?7303115 [收藏] [复制] [分享] [RSS]

日志

整数规划求解

已有 961 次阅读2014-10-11 03:11 |个人分类:LISP|系统分类:插件| 整数规划求解

X、Y、Z均为非负整数,a>b>c>0且满足L-min(a,b,c)<a*X+b*Y+c*Z<=L,求X、Y、Z的整数解?
(setq a 9 b 8 c 7 L 100 nlist nil)
(defun ff (n / llist i)
    (setq llist '() i 0)
    (while (<= i n)
       (setq llist (cons i llist))
       (setq i (+ i 1))
    )
   llist
)
(defun qz (x y)
   (setq n (/ (- x (rem x y)) y))
   n
)
(foreach na (ff (qz L a))
    (foreach nb (ff (qz (- L (* a na)) b))
         (foreach nc (ff (qz (- L (+ (* a na) (* b nb))) c))
               (if (and (< (- L c) (+ (* a na) (* b nb) (* c nc))) (>= L (+ (* a na) (* b nb) (* c nc))) )
                   (setq  nlist (cons (list na nb nc) nlist))
               )            
         )
    )
)
(print nlist)

路过

雷人

握手

鲜花

鸡蛋

评论 (0 个评论)

facelist doodle 涂鸦板

您需要登录后才可以评论 登录 | 注册

小黑屋|手机版|CAD论坛|CAD教程|CAD下载|联系我们|关于明经|明经通道 ( 粤ICP备05003914号 )  
©2000-2023 明经通道 版权所有 本站代码,在未取得本站及作者授权的情况下,不得用于商业用途

GMT+8, 2024-4-24 11:45 , Processed in 4.422898 second(s), 16 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

返回顶部