现在贴出来也还不算过时吧?!上网就是一种休闲,我们要把自己的正事忙完了,有空的时候才得来!曾经有个叫“怒海孤芳自赏鸿”的网友评论在网上讨论编程练习的人们“真是一帮闲人!”。所言极是!不闲的人怎么会来上网呢!(“怒海孤鸿”闲得无聊了就上网谈“吃饭、喝酒、泡钮”与我们闲时上网来谈论“科技话题”形成了强烈的反差!)
迄今为止,“zhouduoliang”网友的程序最好!思路最新颖!我昨日下午的一个帖子是想促使网友们努力的去思考:有没有再把“zhouduoliang”的程序进一步简化的可能?
“周铎良”网友的程序已经最接近“最简”,如要再进一步做较大的“化简”是不可能的了。顶多可以在“周铎良”网友的程序的基础上再缩减一步!如下图所示:
能够去掉“ANI M1”这条指令是因为程序是以最后运算的结果为输出结果。把“停止Y输出”的运算放在“启动Y输出”的运算之后,就为我们减掉“ANI M1”创造了条件!
“竟走”项目的比赛,冠军应该是“最先到达终点”且不违反比赛规则的人。如果在比赛过程中采用“跑”来实现“最先到达终点”不但不能算“冠军”,而且连获得名次的资格也没有!
譬如《三菱plc指令请教》一帖的楼主需要请教的内容是:在FX1n上用“非SUM指令”来实现“SUM指令”的功能,把发生在“K2X10”字节中的“ON”位的总数统计出来。而该主题帖下第4楼跟帖的“rain1”给出一个程序“MOV K2X10 D0 SUM D0 D1”只用两条指令就搞定!这个程序虽然能够完成“K2X10”字节中“ON”位的数量的统计任务,而且还比较简单。但是,这个程序却不符合楼主的条件限制(在FX1n 中完成统计任务)。而该主题下第114楼的“zhouduoliang”网友用了11条指令来完成相同的统计任务,比“rain1”的程序还多用了9 条指令。但是,“zhouduoliang”的程序才是符合楼主要求的最简练的程序!
在本《探讨》主题下第16楼跟帖的“鸡蛋饼”网友贴了一个程序仅仅只用了9 条指令和 1 个指针就把 64 个输出位的“启动”和“停止”功能来搞定!但是,他的程序不能在FX2n及之下档次的PLC中实现!所以,在他理解了第17楼的内容之后,他自己便把贴在第16楼的不符合楼主所限定之规则的梯形图给删除了。
我由衷的感谢 “鸡蛋饼”网友能够理解第17楼帖子的内容!
我想“鸡蛋饼”网友不会介意我把您在第16楼展示过的梯形图程序再贴出来与别人的程序作个比较吧!我完全是出于相互交流的目的,并不是故意要挑您的毛病!因为我就不介意别人挑我的毛病,而且还真诚的欢迎网友们认真的挑挑我的毛病!但有条件:就是请您用讲道理的方式,有根有据的挑出我的毛病,并讲出您挑出的毛病为什么能称之为“毛病”它到底违背了哪些规矩?切记不要“不负责任、不讲道理的掷烂砖砸人”(就如象“通讯网”先生那样掷烂砖砸人是最无耻的!)
下面我就把“鸡蛋饼”在第16楼贴出过的梯形图再展现出来与第25楼的程序相比较。如果我们忽略楼主的题目之规则限制,则“鸡蛋饼”网友的程序就是比第25楼的程序更为“简练”的程序!