- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
* LOGO 第五章 分支结构 分支结构是计算机程序中一种主要结构,它是进行逻辑判断的主要手段。各种计算机语言都提供了实现分支结构的语句,Auto LISP语言提供了两个实现分支结构的函数if和cond。本章的重点是介绍这两个函数的功能和应用。同时也是分别介绍各种测试函数。 5.1 关系运算函数 关系运算函数就是对数值型表达式的大小进行比较的函数。这些函数的参数即数值表达式可以是两个也可以是多个。关系运算函数的求值结果的返回值不是数值量而是逻辑量,如果成立返回值为T,否则为nil。Auto LISP语言提供了六种关系运算函数: 5.1.1 格式 (〈函数名〉 〈数1〉 〈数2〉……) 其函数名: = 等于 小于 = 小于或等于 大于 = 大于或等于 /= 不等于 参数: 〈数1〉〈数2〉……为数值表达式,其值必须为数,可以是整型数也可以是实型数,如果是字符串,则要按ASCⅡ码大小进行比较。函数的参数个数一般不限。 5.1.2 功用及求值结果 主要 用于比较各数值型表达式的值之间的关系,数值表达式可以是数字原子、变量或表,执行关系运算函数时先对各表达式求值,再对其值进行比较,比较 结果成立,返回值为T,否则为nil。 ( e1 e2 e3 e4…en) 只有e1e2e3e4…en 返回值为T,否则为nil。 ;e1…en为表达式的数值。 (= e1 e2 e3 e4…en) 只有e1≤e2≤e3≤e4…≤en 返回值为T,否则为nil。 (= e1 e2 e3 e4…en) 只有e1=e2=e3=e4…=en 返回值为T,否则为nil。 但/= 函数略有不同 (/= e1 e2 e3 e4…en) 只要有任意两个数值表达式不等即返回T,只有全部相等返回nil。 例如: ( 1 2 3 4 5) 返回值为T ( 1 2 3 3 4) 返回值nil ( (+ 4 3 2) (sqrt 4) 1) 返回值为T (setq a 3 b 4 c 6) ( a b c) 返回值为T (= a b c) 返回值nil ( “A” “B” “C” “X” “Y” “Z”) 返回值为T(以ASCⅡ码进行比较) (/= 1 2 3 4) 返回值为T (/= 1 1 3 4) 返回值nil 5.2 逻辑运算函数 对应于一般高级语言的逻辑运算符,Auto LISP也相应的提供了三种逻辑运算函数,即逻辑“与”and,逻辑“或”or和逻辑“非”not。Auto LISP的三个逻辑运算函数 的参数可以是任意类型的表达式,下面分别介绍: 5.2.1 逻辑“与”函数AND 1.调用格式 (and 〈表达式〉……) 〈表达式〉个数不限。 2.功用及求值结果 执行该函数时对其各表达式依次求值,若求值过程中碰到nil,函数的返回值即为nil,若所有表达式的值均为非nil,该函数返回T。例如: (and 1 2 3 T) 返回值T (and 1 2 3 ()) 返回值nil (and (setq e 10) (+ 3 1) 12)
文档评论(0)