找回密码
 注册会员

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是代表什么?
8 A9 p! w9 u- y3 k! O' B  R2 r5 p
2 h. t3 v, q9 L) l6 e8 X' b9 M
发表于 2013-8-27 13:06:06 | 显示全部楼层
本帖最后由 mcsino 于 2013-8-27 14:00 编辑 . ]6 O( R1 F( H% {
# G' j' @. Q* l7 D9 \3 f
不用这么复杂吧,既然有人挖,我写点简单的 1~9个槽应该随便切(如果需要切10个以上的槽,适当增加变量即可),也不需要逻辑运算,位运算,也许有错,没深究, X& c- G1 `" m1 q
#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 编辑
5 G4 c3 h% T) G5 u+ W5 T( M
. ~3 U. S$ v* Z#17=0
# _# i( z4 n, b  m" b0 @9 y
#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
" [# o& o, N0 |红色字体为避免重复切削增加的代码

点评

大师,你太牛叉了,是不是开辟一组缓存,把已加工的槽号存进去,加工之前再取出来逐一对比?  发表于 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 编辑 , P8 f- b' N6 k
mcsino 发表于 2013-8-28 18:44
. U# f! g1 ^! i2 Q% Y#17=0
) j9 E. ]5 B$ Y5 B; R7 r/ G  L#19=1#20=#200While 1>0 do1#20=#20/10#33= FIX[#20]#32=#20-FIX[#20]*10IF[ #33==0 and #320 do2#1 ...
8 t: X. E- R" p' f# |' r* k
# F4 C1 ]+ C  {  i  p
哇咔咔......用你这个思路还有更简单更完美的......可以很容易就判断出数据是否重复...
您需要登录后才可以回帖 登录 | 注册会员

本版积分规则

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

GMT+8, 2025-7-9 15:20 , Processed in 0.073612 second(s), 18 queries , Gzip On.

Powered by Discuz! X3.5 Licensed

© 2001-2025 Discuz! Team.

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