找回密码
 注册会员

QQ登录

只需一步,快速开始

搜索
楼主: jiangssli

数控车高级宏程序逻辑运用的题目

[复制链接]
发表于 2013-8-27 07:59:55 | 显示全部楼层
很不错的帖子!!!
发表于 2013-8-27 08:03:35 | 显示全部楼层
感谢分享
发表于 2013-8-27 08:04:18 | 显示全部楼层
主要是学思路、。。其实宏做到最后都差不多
发表于 2013-8-27 10:48:30 | 显示全部楼层
#10是代表什么?
3 e) C3 {) S. E) z3 Y- s% S5 A& ~. m7 Q0 [" P  ?
发表于 2013-8-27 13:06:06 | 显示全部楼层
本帖最后由 mcsino 于 2013-8-27 14:00 编辑 4 x9 }! e. U  g; j4 r6 Q6 L
/ h. N/ b9 f3 x; g4 A6 i
不用这么复杂吧,既然有人挖,我写点简单的 1~9个槽应该随便切(如果需要切10个以上的槽,适当增加变量即可),也不需要逻辑运算,位运算,也许有错,没深究
% R) i& q! M. f
#20=#200
While 1>0 do1
#20=#20/10
#33= FIX[#20]
#32=#20-FIX[#20]*10
IF[ #33==0 and #32<1] goto 1
#30=#1-(#32-1)*10-#3
g0 z#30
g1 x40 f#7
g0 x52
end1
n1  m99
#1 z向第一个槽起点, #3槽刀宽

点评

呵呵,学习用的嘛,再加几段就可以避免出错了,大侠(不叫大师了)帮我看一下这样行不行  发表于 2013-8-28 18:23
擦.....不要叫什么大师 我出这个题目的意义在于锻炼思路和算法,不是真的做这样的产品..但是实际中也许会遇到类似的问题....加工中心上就有像这样加工的产品...你的程序没有容错性......  发表于 2013-8-27 19:58
大师的本意不是要切1和5?  发表于 2013-8-27 17:20
这种不按规矩出牌的,会做一些无用功,还是切1和5  发表于 2013-8-27 16:53
#200=15151的时候,你打算切哪几个槽??  发表于 2013-8-27 16:47
你觉得他是什么意思呢?  发表于 2013-8-27 15:26
你没看懂LZ的意思  发表于 2013-8-27 15:24
发表于 2013-8-27 14:42:46 | 显示全部楼层
呵呵!用子程序不快一些吗!?
发表于 2013-8-27 19:47:35 | 显示全部楼层
看不懂,但是学习了
发表于 2013-8-28 18:44:50 | 显示全部楼层
本帖最后由 mcsino 于 2013-8-28 18:53 编辑 1 D6 B$ [5 w: u' T" I3 m

+ A! m  n4 r' ^6 ]% I& A: c#17=0& n; ]7 ^. |  t" L- z9 T( p  c$ z0 l
#19=1
#20=#200
While 1>0 do1
#20=#20/10
#33= FIX[#20]
#32=#20-FIX[#20]*10
IF[ #33==0 and #32<1] goto 1
#18=#32
WHILE #18>0 do2
#19=#19*2
#18=#18-1
end2
if #17 and #19 goto2;判断当前槽是否已经加工,已加工则跳转
#17=#17+#19 ;对当前槽状态做记录,标记为已加工
#30=#1-(#32-1)*10-#3
g0 z#30
g1 x40 f#7
g0 x52
n2 end1
n1  m99
; d* V, H4 a: }- b2 F红色字体为避免重复切削增加的代码

点评

大师,你太牛叉了,是不是开辟一组缓存,把已加工的槽号存进去,加工之前再取出来逐一对比?  发表于 2013-8-29 18:50
他第一个程序的思路和你毛利老师发的程序思路一样,按照这样的思路也可以做到重复数据不加工的方法,完全可以不用到AND.....  发表于 2013-8-29 15:30
还是用了位运算  发表于 2013-8-29 14:37
发表于 2013-8-28 19:59:57 | 显示全部楼层
哪里哦,那个程序的算法的确不是我目前所能掌握的!只是刚入门!正在学习中,不过进步很慢!!请你有空多多指点啦!!
 楼主| 发表于 2013-8-28 21:16:28 | 显示全部楼层
本帖最后由 jiangssli 于 2013-8-29 12:02 编辑
! A; F. H. o7 f. r" q$ H; n
mcsino 发表于 2013-8-28 18:44
' h  g/ Q% c) O+ I+ N! }#17=0
/ [1 n. b9 w4 @) _; b/ ?#19=1#20=#200While 1>0 do1#20=#20/10#33= FIX[#20]#32=#20-FIX[#20]*10IF[ #33==0 and #320 do2#1 ...
2 j- Z7 G& s& O" F1 U

+ n9 L+ y- t! H哇咔咔......用你这个思路还有更简单更完美的......可以很容易就判断出数据是否重复...
您需要登录后才可以回帖 登录 | 注册会员

本版积分规则

Archiver|手机版|小黑屋|机械社区 ( 京ICP备10217105号-1,京ICP证050210号,浙公网安备33038202004372号 )

GMT+8, 2025-6-19 15:20 , Processed in 0.075106 second(s), 15 queries , Gzip On.

Powered by Discuz! X3.5 Licensed

© 2001-2025 Discuz! Team.

快速回复 返回顶部 返回列表