- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
CAD 程序设计方法 教师:李敬敏 四、条件函数与循环函数 条件函数与循环函数的重要性 4.1 测试函数 1 测试是否为原子函数 (atom项) 4.2 条件函数 4.2 条件函数 1 单分支条件函数if 4.2 条件函数 2多分支函数cond 讨论与练习 4.2 条件函数 3 顺序控制函数progn 4.2 条件函数 条件函数的应用技巧 条件函数if的应用技巧 条件函数if的应用技巧 条件函数if的应用技巧 4.3 循环函数 4.3 循环函数 循环函数训练与讨论 4.3 循环函数 循环函数训练与讨论 循环函数repeat的应用技巧 循环函数repeat的应用技巧 循环函数repeat的应用技巧 循环函数repeat的应用技巧 循环函数repeat的应用技巧 循环函数repeat的应用技巧 思考 循环函数while的应用技巧 循环函数while的应用技巧 循环函数while的应用技巧 循环函数while的应用技巧 条件函数 循环函数 讨论与练习 讨论与练习 4.4 嵌套函数 4.4 嵌套函数 4.4 嵌套函数 4.4 嵌套函数 4.5 形参赋值函数 4.5 形参赋值函数 小结 这一章重点在条件函数和循环函数,也是在程序设计中的重中之重 希望大家把这一章中例题好好练习,并能顺利解决,相信学习进程就已经向前迈一大步了,如果觉得头晕脑胀的,可以好好休息一天,再来挑战 一定不要让这一章成为你学习AutoLIsp的终结者 1 (apply 函数 表) 功能:处理表的函数,通过调用函数来对表进行求值,并返回求值结果 注意: 1:apply函数要对参数求值,如果参数不为变量,必尖加‘禁止求值符号 (apply ’max ‘(1 2 3 4 5)) 2:表中元素个数、类型和顺序要和函数要求的参数一致 (apply ‘setq ‘(a 1.0 b 3.0 c “yes”)); (apply ‘abs ‘(-5.0)); (apply ‘strcat ‘(“a” “b” “c”)) 2 (mapcar 函数 表1…… 表n ) 功能:把表1…表n中对应位置上的元素作为函数参数的调用,并对进行求值,按求值顺序构成一个表作为返回值。 (mapcar ‘+ ‘(1 2 3) ‘(4 5 6) ‘(7 8 9)) 返回(12 15 18) 注意: 1) 表1… 表n中各表的数目必须和函数所要求的参数数目相适应。 (mapcar ‘1- ‘(5 4 3 2 )) ;返回(4 3 2 1 ) (mapcar ‘eq ‘(1 2 a b ) ‘(1 a c b)) ;返回(T nil nil T ) 注意: 2)不对表中元素求值 (setq a 2 b 3) 2 (mapcar 函数 表1…… 表n ) 功能:把表1…表n中对应位置上的元素作为函数参数的调用,并对进行求值,按求值顺序构成一个表作为返回值。 (mapcar ‘* ‘(a b) ‘(1 2)) (mapcar ‘+ (list a b) ‘(1 2)) 3)表的长度决定了函数调用次数,也决定了mapcar返回表的长度。若各个表长度不等,只循环其中的最小长度数 (mapcar ‘* ‘(5 6 7) ‘(1 2)) (mapcar ‘* ‘(12 5 7 4) ‘(5)) ;返回 (60) ;返回 (5 12) 注意: 4)若函数不是一个变量,在其前必须加一个‘来阻止求值,否则出错。 2 (mapcar 函数 表1…… 表n ) 功能:把表1…表n中对应位置上的元素作为函数参数的调用,并对进行求值,按求值顺序构成一个表作为返回值。 (mapcar + ‘(3 4) ‘(1 2)) ;返回 (4 6) ;返回函数错误 (setq plus ‘+) (mapcar plus ‘(3 4) ‘(1 2)) (foreach 变量名 表 表达式 …) 功能:该函数将依次把表中每一个顶层元素赋给变量名,对各表达式进行求值,返回最后一个表达式的求值结果。 练习1: (foreach x ‘(2 4 6) (* x x)) ;返回36 练习2: foreach-1.lsp 1 (foreach 变量名 表 表达式 …) 功能:该函数将依次把表中每一个顶层元素赋给变量名,对各表达式进行求值,返回最后一个表达式的求值结果。 练习3:foreach-2.lsp 给一个变量表中各变量赋值 * * 1 根据一定的条件,有选择地执行特定的程序段;而且某些动作需要一而再、再而三的重复执行。 2 主要学习内容: 1)测试函数 2)条件函数 3)循环函数 5)形参赋值函数 4)嵌套函
文档评论(0)