找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 12519|回复: 35

使用一連串IF-GOTO的經驗

 火.. [复制链接]

28

主题

67

回帖

146

积分

注册会员

积分
146
发表于 2013-7-24 22:40:27 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区

您需要 登录 才可以下载或查看,没有账号?立即注册

×
本帖最后由 羅蓋仙 于 2013-7-24 22:53 编辑 2 K8 S8 `, y0 ^7 u* _* d4 ~
0 _' J# m6 p- s8 j- q8 o: S
使用者如果需要使用一連串的IF-GOTO,我想說明一些事項與特性
6 J% a; y/ C) [% [3 h# [4 m- r( I$ q0 _4 c7 c- y- W
形式1:
, t4 n0 h! p3 I" u& |: M#100=选兵(陸.海.空)$ F8 v; Q' T& L
IF[#100 EQ 陸 ] GO1" D* Y: I! W& q' c; ^' c% M
IF[#100 EQ 海 ] GO2
; D9 G, N0 T# [  Z6 J: O; DGO3(鼻用說.當然是空軍)4 ^9 D& m9 K. m4 m# o" Q
(或不用GOTO3省略它.可以的話在GOTO2後面直接就做,屬於空軍加工部分)& ]; ]+ l1 u/ S
因為EQ是很確定.鐵定的東西..使用者可安排快捷性(調整順序)1 p; S: K1 G$ k/ ~6 d5 ^# e

' s5 K( n4 n' }; W如果怕#100有錯誤.如輸入天兵..可在#100輸入後...與GOTO之間進行防呆
+ j2 [9 K# }$ a也可不防呆,加工會鑽錯,誰叫使用者故意去測試玩弄MACRO,沒防呆功能用戶最好空跑一下,確定好再做
9 a8 }0 Y. d6 Y

. }8 |) I: S1 K- |還有一種防呆寫法:
1 a# ?, S* O$ C& b+ ?8 D% D. L4 l* T#100=選兵(陸.海.空). Y' ?! O* V1 V8 V( R" m
IF[#100 EQ 陸 ] GO1  o0 z) F( H$ f, f. H7 p* ~
IF[#100 EQ 海 ] GO2
8 {% N0 z- a+ M. j4 u9 k. fIF[#100 EQ 空 ] GO3
. @( _4 D, j% K* m#3000=1.(如果流到這裡表示#100投入有誤)2 m+ K" u/ e% Y% q# L2 r  c
N1....
$ p9 F2 Z; C) ^6 G4 g; i0 l; w
0 u  I0 U+ P+ y8 K9 r) u" v/ l, LN2....
/ w* Y0 X. p' u' T+ [$ a& z
1 \- c3 u9 W3 ^  FN3....9 \0 E# G7 U% d2 W; u8 ]& R- W

6 |4 i) P: T+ X8 E+ O' l9 tM99

1 ?& E0 `0 n: A" V, O. n1 O* j" ?# Z$ |# m6 r
+ G% X. F% e5 i: {( U$ f9 R2 i. C
形式2:
+ `- \4 A/ R. D. {  f#100=領國家的薪水(人民,老師,軍警,政官(民意.立法))" l' }. `; e6 s
IF[#100 EQ 0万] GO1. Y0 k3 N+ M) P8 i- x9 |2 P
IF[#100 GT 5万] GO2( O' [% z/ W4 g) V
IF[#100 LT 5万] GO3
( w3 q0 O; W4 b' B5 [. lGO4(可省略條件式[#100 EQ5万])老師
9 s9 l& a% n# @' u& a2 j0 I8 X..........
4 D$ G. p! t) R# rN1 人民7 v& @6 B! L/ l! k% O3 i
' F& w, ?) t6 I2 J* g1 Z
N2 政官5 _0 |) E" f6 M) W- M! h$ g
0 N/ w, s' U$ n3 ~5 S
N3 軍警
; _( Z: N1 X' Z! g: o3 ?, E: m7 c, I  [3 w, Z6 d9 [' L+ b
N4 老師
# B# {" l9 T0 D( m4 r) z# p) ?& x9 _
M99
  U: M$ u& n9 e3 c# w4 v* i0 [1 {
) s; j; v9 J" @& e' R※注意1與3可能會有衝突,有前後順序性的
( v4 r2 x' Z4 V; D! L
形式2是以新台币計價的6 i! U& N8 V$ J, _

2 O- S& `6 ?7 G7 a! R3 D+ j9 V; A' Y; `+ Z' ^& O
另外一個IF-THEN的例子:
) O3 k: w7 L7 J7 e/ R假設#100=已用四則運算,算好的結果8 o2 ?8 b7 w+ C) {8 a7 g% Z
' G4 T, W/ }9 [! a. z
IF[#100 EQ 2.5万] TH#30=10.
3 A% g; f! O5 v( t  x) _% g$ xIF[#100 EQ 0万] TH#30=10.: c" s& v: V' {5 {  }1 A- {8 O
IF[#100 GT 2.5万] TH#30=20.
2 m" ~! ~$ F; \3 y% M( HIF[#100 LT 2.5万] TH#30=15.
7 Z& Z7 I* \  X5 k$ qN1 G1 X#30 Y#25.......開始加工

# a0 g% m$ F/ m6 \# K# `5 o& R' ^1 n
上述2與4性質雷同可能會有衝突,不能這樣寫,可改寫成,A法:) g8 c+ p* m& b. d" n
' e: {9 d9 W& y5 W3 p$ V* A$ V
IF[#100 EQ 2.5] TH#30=10.0 Q% }$ ?6 l3 f8 F
IF[#100 EQ 0.] TH#30=10.
) i( n6 R8 m, r5 V% RIF[#100 EQ 0.]GO1或IF[#30 EQ 10.]GO1(讀到2先跳開)# w+ Y2 [: u* q# z7 z! O4 R) F
IF[#100 GT 2.5] TH#30=20.. E' w; V% i3 ]
IF[#100 LT 2.5] TH#30=15.
" _# e# p6 C) f: j2 K, ]N1 G1 X#30 Y#25.......開始加工
9 q; N+ R0 T3 y

& |7 b4 d" E- O4 g/ r. w% r* a8 c: V或改寫成,B法:使用或閘(OR)6 A, p4 K* i6 g2 f) j8 M
#30=10.
7 I8 x8 c; ]( a$ N# LIF[[#100 EQ 0.]OR[#100 EQ 2.5]]GO1(判斷好就先跳開)6 M& ~9 v! ]- Z: b9 V- T$ J
IF[#100 GT 2.5] TH#30=20.* b1 O3 [9 h" Z& C
IF[#100 LT 2.5] TH#30=15.; M) z' f$ z3 f7 J+ _3 b( ?
N1 G1 X#30 Y#25.......開始加工8 L2 \& ?! Y: l. ], S
) l8 c  V" i+ Z, J7 X
還有一種不使用TH的寫成,如下:
1 `% P" |3 Y: G( t0 J: c30=10.+ A9 n* l0 z: F/ W' b  [
IF[[#100 EQ 0.]OR[#100 EQ 2.5]]GO1; w# z, z* z: \
#30=20., E9 U8 O4 _, d9 j
IF[#100 GT 2.5] G01
1 b; D8 g& W  m, w$ [#30=15.
. O5 @/ x5 R2 A* B* l, V! {IF[#100 LT 2.5] GO1<---此條件式可以省略
( W2 m1 I1 u2 q0 a0 A0 x4 IN1 G1 X#30 Y#25.......開始加工
& ~/ R& w8 g, y  U7 r5 n; P2 H+ l* g5 W/ j
#30會一直有數值去覆蓋它  }2 {6 p, q( i. M; {6 w5 a
1 S8 R8 {/ Y" \9 w& }# p& a

8 k6 D+ `: N8 ~8 i+ ~6 s形式3:理髮
/ b. Y0 ?* b1 [7 v, e#100=2兵(1.)、一兵(1.5)、上兵(2.)、下士(2.5)、中士(3.0)  [- Q: ]- l2 ~( G% Q9 C
IF[ #100 LE 3. ] GOTO理15分頭
% C+ `6 I: g" B( x, h4 i$ dIF[ #100 LE2.5] GOTO理12分頭2 E: X) u% ]/ S) X  [7 t
IF[ #100 LE 2. ] GOTO理9分頭0 t2 U. _/ j' P
IF[ #100 LE1.5] GOTO理6分頭
) P$ G- |: h/ oIF[ #100 LE 1. ] GOTO理豬頭
  `- c$ s: W' v) ^$ ~3 c; K% O) Y: N% Z, M; g; Q
※順序可顛倒,這不會有衝突,如阿兵哥人多可考慮置於首,考慮快捷性
; b2 Y7 D; [9 X$ n2 O

9 Q1 K( s$ b/ x另外的一種B式
/ p8 s2 k! U. s5 n, BIF[ #100 GE 3. ] GO! T/ m+ o! ?6 Q* l9 U: {6 ]
IF[ #100 GE 2.5] GO6 {4 U$ H  L8 h3 O' v( K. f2 k
IF[ #100 GE 2. ] GO
0 c1 @  g; C3 ]( p/ r2 c7 CIF[ #100 GE 1.5] GO
5 s, P) P$ [/ P1 \7 @IF[ #100 GE 1. ] GO. b+ C" K! c  C( k4 g; \
順序不可顛倒喔!不然少將會理成狗頭
" b4 g+ P5 g6 K8 Q6 x此例不能安排、佈置快捷性# m* P5 [9 Q4 r$ J7 T
& q9 [( O5 H# D

0 K8 y: O; {; ]  P( Y) HA式:有點像把數值逼到牆角比,自不量力可直接看出
! {; H( p6 K0 i& oB式:像在自由空間比,如果順序調換
5 n# ^+ @* |, H: S6 h* B有錢人也可以去小吃店吃牛肉麵
$ E1 V) U" F/ T4 u. I$ S高學歷也可撿回收物當職業

8 c2 x% |( k0 j( a' Z- ?0 ?2 ^$ B3 I- o
再說一下B:順序不能上下倒立,只能轉身如
/ O2 e! N" [7 h  R; w1 X0 @IF[ 3. LE #100 ] GO
* @* T- D3 W. l...
0 ~) \, ~, R& O' A4 f, {! {...; O$ m; C4 Z4 x9 O; Y5 c
IF[ 1. LE #100 ] GO& f+ \; x) B: o3 s( x) A  ]1 p- f1 G
: g9 X4 L+ U3 U/ L. r# |
A.B兩者有一種共通的特性,領多少錢就做多少事
$ J# J* ~& u, H& X! u1 w+ w如果順序顛倒,可能是使用者需要截長補短(抓長補短)的性質,有互補的作用& z" V3 W& `' w; n9 i- c8 L
% t8 K; J( e) [0 i
' ~- }5 ^+ C, s1 N1 {5 `5 i
以上為個人的經驗

28

主题

67

回帖

146

积分

注册会员

积分
146
 楼主| 发表于 2013-7-25 22:17:20 | 显示全部楼层
本帖最后由 羅蓋仙 于 2013-7-25 22:18 编辑 % R1 L/ }9 o; G9 |

8 Q3 h( ?, i( Z* f2 J" e( ^! _形式3的例子有錯誤,小弟越看越奇怪,抱歉  e. |) p% D( I% O$ H* Q/ V5 J# @0 m& i
黑字例子改成這樣(A式)
6 f6 W+ r4 D. n" x  v/ m4 W! NIF[ #100 GE 3. ] GO理15分頭+ ^0 u  s9 L: [) v, |
IF[ #100 GE 2.5] GO理12分頭6 N+ Q/ f( W1 X
IF[ #100 GE 2. ] GO理9分頭
1 f1 m; X# {& GIF[ #100 GE 1.5] GO理6分頭; x8 N3 Z: x5 U7 i) U! k) g: |" s
IF[ #100 GE 1. ] GO理3分頭: t+ b- }! @. o  t1 g# Y( U
$ l8 Z- f! `4 N+ ]' W
紫字例子改成這樣(B式)
% b6 I. O( l- g9 @; k: ~IF[ #100 LE 1. ] GO理15分頭7 x! N( i9 o1 r$ v0 o; B3 D
IF[ #100 LE1.5] GO理12分頭! G- N" R/ |. Q2 [2 f6 c) m
IF[ #100 LE 2. ] GO理9分頭
" O% [+ ]7 o4 }1 g1 v' ?IF[ #100 LE2.5] GO理6分頭6 [2 J0 ]# H4 Y0 X3 Q6 c: X" @
IF[ #100 LE 3. ] GO理3分頭
回复

使用道具 举报

0

主题

6

回帖

11

积分

新手上路

积分
11
发表于 2013-8-12 13:58:29 | 显示全部楼层
小手一抖,金币拿走,谢谢分享0 A/ P% [. s' T
精细族  赚钱窍门
回复

使用道具 举报

1

主题

15

回帖

13

积分

新手上路

积分
13
发表于 2013-9-18 13:31:23 | 显示全部楼层
谢谢分享xxfx
回复

使用道具 举报

2

主题

16

回帖

14

积分

新手上路

积分
14
QQ
发表于 2013-10-14 21:32:36 | 显示全部楼层
看得 好纠结
回复

使用道具 举报

0

主题

25

回帖

21

积分

注册会员

积分
21
发表于 2013-10-19 16:14:57 | 显示全部楼层
看不懂啊宏程序
回复

使用道具 举报

1

主题

25

回帖

142

积分

注册会员

积分
142
发表于 2013-11-16 21:52:45 | 显示全部楼层
小手一抖,金币拿走,谢谢分享
回复

使用道具 举报

0

主题

43

回帖

24

积分

注册会员

积分
24
QQ
发表于 2013-11-28 20:42:36 | 显示全部楼层
攒钱哪!速度
人无我有,人有我变,人变我杂,人杂我强
回复

使用道具 举报

1

主题

379

回帖

240

积分

注册会员

积分
240
QQ
发表于 2014-2-10 21:16:43 | 显示全部楼层
看不懂是什么
回复

使用道具 举报

3

主题

96

回帖

312

积分

注册会员

积分
312
发表于 2014-3-14 12:25:01 | 显示全部楼层
這樣反而 有點難懂了   我資質不好
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关闭

站长推荐上一条 /2 下一条

QQ|Archiver|手机版|小黑屋|若枫后处理论坛 ( 苏ICP备11015087号-1|苏公网安备32059002001368号 )

GMT+8, 2026-8-8 00:47 , Processed in 0.186728 second(s), 25 queries .

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

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