zasdfgbnm 发表于 2010-4-2 18:16:11

逻辑代数与或非运算的精简

not原来用的是
2^condition -1
(http://www.cncalc.org/viewthread.php?tid=1625&page=1&fromuid=28#pid41868)
现在改成新的:
not(condition) = -condition + 1
================================================
and原来ispositive(condition1*condition2)
现在去掉最外边的ispositive,直接condition1*condition2
================================================
复杂的与或只在最外层加上ispositive就行了
================================================
大家都在研究条件很简单(如:x>y)的if,和中断,但是对于条件复杂的if和中断(例如if(a < b && c >= d || !x<y))不知为何都没有人研究.

hcz 发表于 2010-4-2 18:55:33

楼主忘写or的了-.-

hcz 发表于 2010-4-2 18:56:32

嗯,现在已经有>=、>、=,这样组合一下就能把条件几乎全部搞定了

zasdfgbnm 发表于 2010-4-3 08:45:55

楼主忘写or的了-.-
hcz 发表于 2010-4-2 18:55 http://www.cncalc.org/images/common/back.gif
or还没想好怎么精简

zasdfgbnm 发表于 2010-4-4 18:09:56

or的精简:
如果要进行or运算的condition较多可用intz((condition1+condition2+condition3+……)/99)
以节约代码空间
当较少的时候sgn(condition1+condition2+……)就行了

lljjss 发表于 2010-7-4 18:19:00

我认为A or B可用1-(1-A)(1-B),这最简了,用手机,部分字符打不出、、、
页: [1]
查看完整版本: 逻辑代数与或非运算的精简