hlzhong 发表于 2003-4-10 12:30:00

请问在visual lisp中如何设置才能得到一个循环(共循环10次)中第5次循环后的变量返

请问在visual lisp中如何设置才能得到一个循环(共循环10次)中第5次循环后的变量返回值??

龙龙仔 发表于 2003-4-10 12:38:00

你以為變數幹嗎用的??

meflying 发表于 2003-4-10 14:50:00

在第五次时将它存为一个临时变量,最后提取临时变量的值即可

autolisp 发表于 2003-4-12 14:20:00

利用数组

(setq i 1)
(repeat 10
(set (read (strcat "var[" (rtos i) "]")) i)
(setq i (+ 1 i))
)
(princ (eval (read "var")))

aihuyujian 发表于 2013-11-8 16:52:08

duoziefenxiang

llsheng_73 发表于 2013-11-9 03:35:12

我个人处理类似楼主所说问题的时候,一般用到下边两种办法,不知道高手们是怎么做的,也想学习下
1. 关心特定次数时的变量
(setq i 0 values nil)
   (repeat 10;;假定循环10次
   (setq i(1+ i))
       ......;;具体处理什么东东只能看情况而定吧
   (if (= i 5)(progn(setq values (list ;;;把需要关心变量都放里边))));;5是关心的次数
);;repeat end
   values;;;它是一个表,需要哪个变量都可以通过(nth i values)来访问它
2. 不能确定需要的变量值会在第几次出现,但总该清楚我们需要关心的东东会在什么条件下出现吧
   (setq values nil)
   (while ;;循环条件根据具体情况
   ....循环过程
   (if();;;里边写好判断条件
      (progn    ;;这里一般破坏while条件让循环提前结束,这样需要的变量自然都在。但可能不能因为要关心某个变量能结束循环,那就用前边的办法,把需要关心的变量又放到values表里边去吧,等循环结束后可以按需要访问
               )
         ); if end
   );while end

aihuyujian 发表于 2013-11-20 16:31:36

xuexixuexie
页: [1]
查看完整版本: 请问在visual lisp中如何设置才能得到一个循环(共循环10次)中第5次循环后的变量返