只需一步,快速开始
假設 X Y Z 三個變量的自然數,X大於或等於1,小於或等於5; Y大於或等於2,小於或等於8; Z大於或等於7,小於或等於12 ;; 現在把 X Y Z 三個自然數分別放在幾個不同的箱子裡按從大到小的順序排列,即需保證 X<Y<Z,還有,要保證 X Y Z 的和 小於或等於 20 請問有幾種排法?並且有哪幾種?
請各位高手幫忙出出主意: 利用上面的一些條件,能不能在CAD裡面編寫一個小程序,把所以的幾種排法都呈現在屏幕上?(那樣我就不用一個一個地去數有多少種排法了,並且准確,省時)
萬分謝謝!
使用道具 举报
;题目有点问题吧,不是随机排列,应该是排列组合吧
(defun c:TT (/ lst)
(setq x1 1 x2 5 y1 2 y2 8 z1 7 z2 12 sum 20 x x1 ) (while (<= x x2) (setq y (max y1 (1+ x))) (while (<= y y2) (setq z (max z1 (1+ y)) z0 (- sum x y) ) (while (and (<= z z2) (<= z z0)) (setq lst (append lst (list (list x y z))) z (1+ z) ) ) (setq y (1+ y)) ) (setq x (1+ x)) ) (princ "\n(x y z)\n") (foreach el lst (print el)) (mapcar 'princ (list "\n共" (length lst) "个")) (princ))
謝謝樓主!非常感謝!
本版积分规则 发表回复 回帖后跳转到最后一页
小黑屋|手机版|CAD论坛|CAD教程|CAD下载|联系我们|关于明经|明经通道 ( 粤ICP备05003914号 ) ©2000-2023 明经通道 版权所有 本站代码,在未取得本站及作者授权的情况下,不得用于商业用途
GMT+8, 2024-11-6 10:01 , Processed in 0.150197 second(s), 25 queries , Gzip On.
Powered by Discuz! X3.4
Copyright © 2001-2021, Tencent Cloud.