马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有账号?立即注册
×
本帖最后由 Lisphk 于 2013-5-26 13:02 编辑
最近写程序,用到了一些逻辑判断的,网上找了些资料,也在论坛请教了朋友,有些心得,试试写个原创的帖子,逐步完善。
与门
又称“与电路”。执行“与”运算的基本门电路。有几个输入端,只有一个输出端。当所有的输入
同时为“1”电平时,输出才为“1”电平,否则输出为“0”电平。
与的含义是∶只有当决定一件事情的所有条件都具备时,这个事件才会发生。逻辑与也称逻辑乘。
与门表达式∶F=A·B
“与”门 用“AND”表示
电路状态表
A
| B
| Z
| 0
| 0
| 0
| 0
| 1
| 0
| 1
| 0
| 0
| 1
| 1
| 1
|
与门也可以在哲学中形容事件的因果关系。即在几个原因必须全部发生的条件下才能产生此结果,被称为与门。
------------------------------分割线 ----------------------------------------
与运算就是LISP里面的 and ,表示当条件有一条不满足就表求值结果就是0(或者说所有条件都满足才返回1)
- (if (and 条件1 条件2 ... 条件n)
- (都满足)
- (有一条不满足)
- )
心得:所有条件与运算,有一个结果是0,马上结束,不在判断下面的条件。
应用举例:
- (if (and (setq p1 (getpoint "\n窗口第一点<退出>:"))
- (setq p2 (getcorner "\n窗口第二点<退出>:"))
- )
- (progn
- (setq a (mapcar '- p3 p1)
- p3 (mapcar '+ p1 (list (car a) 0.0 0.0))
- p4 (mapcar '+ p1 (list 0.0 (cadr a) 0.0))
- )
- (setq pts (list p1 p3 p2 p4))
- )
- )
上面这个程序,如果选点的时候,有一个回车了,程序就结束了。必须两个都用鼠标选点才进入主程序。
|