|
|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区
您需要 登录 才可以下载或查看,没有账号?立即注册
×
本帖最后由 羅蓋仙 于 2013-7-24 22:53 编辑 9 Z, `& y3 _/ g/ _; m- m- N0 e+ z
0 a7 S+ _! P, i. x- B使用者如果需要使用一連串的IF-GOTO,我想說明一些事項與特性
8 e4 q- I6 }8 W5 p( h9 p r9 n
+ [5 g+ @. R! P' W形式1:
% m, ~0 Z, U( f) n# d#100=选兵(陸.海.空)6 P, s! M3 }" Y+ t( s
IF[#100 EQ 陸 ] GO1- Q' y C; v* Z1 l
IF[#100 EQ 海 ] GO2
& v0 C5 O! i9 SGO3(鼻用說.當然是空軍)
/ i6 w$ I, ~$ `(或不用GOTO3省略它.可以的話在GOTO2後面直接就做,屬於空軍加工部分)' K, k5 U `4 r0 D4 l+ I
因為EQ是很確定.鐵定的東西..使用者可安排快捷性(調整順序)
# W; I, k) n `0 y8 Z* q$ b
, j) f. B9 e* ^" w# @3 g) M如果怕#100有錯誤.如輸入天兵..可在#100輸入後...與GOTO之間進行防呆
* C1 N1 Z! B' G# j- r也可不防呆,加工會鑽錯,誰叫使用者故意去測試玩弄MACRO,沒防呆功能用戶最好空跑一下,確定好再做* V' [6 e( j( S$ _$ {9 e) a* u
6 n4 y- v5 K; d還有一種防呆寫法:
# d4 Y% A7 ?% j# h" `#100=選兵(陸.海.空)& a( t% B' D; y9 V3 a, ]* V, b3 U# V
IF[#100 EQ 陸 ] GO19 g" f# g# W5 h, M( R$ m
IF[#100 EQ 海 ] GO2" M2 Q' E1 O8 N0 }4 u3 w, E; E4 [
IF[#100 EQ 空 ] GO3! W3 V0 z, z7 P6 N
#3000=1.(如果流到這裡表示#100投入有誤): ?3 C7 L) X3 T0 ]
N1....3 k9 F+ N" K4 P! K8 G$ \; |
5 f2 X6 ^6 ]0 N* z1 jN2....4 \# l& b, T8 B9 M; a/ F M8 i# }
7 O1 @+ a- _. O& I
N3....
' \$ ~5 N# B5 H; t6 p8 L2 n# y0 d6 c9 r& f* F
M99 l+ A% k% X# ^+ \
2 H3 C; c+ N! g1 N
) x9 g' z/ U- x. j; {* G形式2:
3 j6 I9 U9 I7 e# ]7 N#100=領國家的薪水(人民,老師,軍警,政官(民意.立法))& Q, Q, j3 v1 w
IF[#100 EQ 0万] GO1
/ Z5 P% h& e, b0 _3 N( kIF[#100 GT 5万] GO27 }2 h) O) d& X
IF[#100 LT 5万] GO3
, \9 p: }2 I3 ?$ W4 _+ p$ ?GO4(可省略條件式[#100 EQ5万])老師
) h3 {0 N" ?1 r) S9 V, n5 ?% x8 L7 }........../ u' U. @6 ^# L( R+ h4 _+ s1 j
N1 人民
, i- I8 S8 i* l, [% P/ ~4 z+ {% W9 }* W. Z4 y# T9 `) \6 J" m3 z0 y, i1 |
N2 政官
# A" ?( S: ~. T$ {) O
& Y: m' r* b' x9 F9 `3 y- [1 uN3 軍警' ~8 M8 k& @% U0 {. ?/ M# Y+ e5 q
1 S" C Q6 _4 DN4 老師, H" q! \' e$ z
7 E& u- X# W4 D2 o% pM99 m7 [* i* \0 P' i8 Q+ e
, D6 f' }9 w& W( I9 @4 ] C W# s4 \※注意1與3可能會有衝突,有前後順序性的
$ I) D6 e/ ?4 q m形式2是以新台币計價的
2 Q% {8 s3 p! y8 M1 M/ ^, K6 x0 b- k+ y# e9 ?+ l. Q( k
8 q, n) M2 R: f另外一個IF-THEN的例子:6 M+ f3 O3 [* M% B( A5 @
假設#100=已用四則運算,算好的結果
- g! p- m* q" [0 B
% Z" f4 P+ o0 k d4 ^: GIF[#100 EQ 2.5万] TH#30=10.
5 O8 Y# L) R+ q" b& KIF[#100 EQ 0万] TH#30=10.' `9 f4 D2 n; i+ b; v) N. w" }
IF[#100 GT 2.5万] TH#30=20.
6 r! { T# y& q) H6 vIF[#100 LT 2.5万] TH#30=15.7 ^% M N8 p q3 L8 \$ r( m4 }
N1 G1 X#30 Y#25.......開始加工
4 S3 k9 c# M. W- f* R2 ] K! L$ j! U3 M) k, [- ^7 D3 n' w
上述2與4性質雷同可能會有衝突,不能這樣寫,可改寫成,A法:# J# D: F; E& N3 ~
* e0 @" x( [: b4 TIF[#100 EQ 2.5] TH#30=10.( N7 N1 @; c5 j3 W
IF[#100 EQ 0.] TH#30=10.
; e" f! ^3 ^- ^1 e$ iIF[#100 EQ 0.]GO1或IF[#30 EQ 10.]GO1(讀到2先跳開)7 N: @" A# ?3 Y
IF[#100 GT 2.5] TH#30=20.
+ |9 I$ \4 G( f* M1 [IF[#100 LT 2.5] TH#30=15.& t, G5 |1 n7 [4 Q* U' n
N1 G1 X#30 Y#25.......開始加工
' }- Q# k! d" @( l
* u% t$ H% j) S或改寫成,B法:使用或閘(OR)% S! s+ o1 N1 s3 e! A- C
#30=10.
9 Z5 ]: t1 z% zIF[[#100 EQ 0.]OR[#100 EQ 2.5]]GO1(判斷好就先跳開)
: L8 M4 M# \/ P" Z8 gIF[#100 GT 2.5] TH#30=20.7 O$ m2 v( ^& S9 Q+ j
IF[#100 LT 2.5] TH#30=15./ B6 s% i( p! k, h& p
N1 G1 X#30 Y#25.......開始加工9 F7 N* ]# ]3 j" O
7 h: A& b% P! u4 ]9 p3 k; G, Y
還有一種不使用TH的寫成,如下:
; d; M$ C; g& H& O" B30=10.
" O9 N+ [# t, z5 ^IF[[#100 EQ 0.]OR[#100 EQ 2.5]]GO1
5 b1 i3 D% J ^+ p6 x! W#30=20., }+ H/ _3 W7 U
IF[#100 GT 2.5] G01( F, h+ B4 N4 F; C, E5 }
#30=15.
2 W6 ^, Y' f4 i1 h+ Q bIF[#100 LT 2.5] GO1<---此條件式可以省略' g# a, V+ ]8 [- l8 H
N1 G1 X#30 Y#25.......開始加工8 `$ n5 f0 K! p) [- s
6 d) ~# ~# w0 k6 `" `) f* Y! g#30會一直有數值去覆蓋它, [7 Z2 I( `/ x( T% G: k
& Q- }: k: O% X0 R" i
' M4 O6 |' U1 F$ E6 J! Z
形式3:理髮
: G W/ s6 K9 K#100=2兵(1.)、一兵(1.5)、上兵(2.)、下士(2.5)、中士(3.0)
5 ^& M3 K l4 H3 DIF[ #100 LE 3. ] GOTO理15分頭8 M8 I0 f) T1 n0 c$ y( l, \
IF[ #100 LE2.5] GOTO理12分頭- [, ^' l- t9 u9 ^, p
IF[ #100 LE 2. ] GOTO理9分頭! ?% b- \2 z/ d
IF[ #100 LE1.5] GOTO理6分頭
, m x/ O5 r R3 {$ [$ n" I7 tIF[ #100 LE 1. ] GOTO理豬頭5 t3 R5 y5 p" p ^& ?- y
$ r- Q3 E: x) F g5 k
※順序可顛倒,這不會有衝突,如阿兵哥人多可考慮置於首,考慮快捷性9 p* ?' F2 T4 G3 w7 {/ s0 i( t
3 z- b; t0 S% d
另外的一種B式3 i8 i" |1 j* }. P7 l
IF[ #100 GE 3. ] GO( [8 |: b9 o( l# u1 |
IF[ #100 GE 2.5] GO! ?8 l y1 T+ e
IF[ #100 GE 2. ] GO( J# L, V' g7 ?. v1 C0 w
IF[ #100 GE 1.5] GO
( ?$ o# }( V6 B0 }4 f' | G/ v1 }- jIF[ #100 GE 1. ] GO6 V T. n- ~$ u7 ]7 I6 K7 O
順序不可顛倒喔!不然少將會理成狗頭
7 q7 T5 z: T: [3 w7 R" c% ]+ m+ J此例不能安排、佈置快捷性
: p' o E! h7 D
- v9 V7 M, y! u3 o( U
+ Y, _7 N" D% X' `( G1 r1 RA式:有點像把數值逼到牆角比,自不量力可直接看出! T6 y( [ y) z" N
B式:像在自由空間比,如果順序調換
, G% l0 q4 Q h5 O9 W/ h. S有錢人也可以去小吃店吃牛肉麵
1 ~$ |, k$ |6 V- g0 B高學歷也可撿回收物當職業 Q8 y2 m4 I0 p6 Z9 R `, K
# p% s# y* s+ s9 ~/ ?$ X7 g再說一下B:順序不能上下倒立,只能轉身如5 C. r/ c+ b+ K( F* I: v
IF[ 3. LE #100 ] GO$ [5 Y9 {0 X/ c A! F1 `" ]: d
...% ?0 f# ~- |) l( C: Y% z& [8 `" X
...3 w- H, R; f# K$ `
IF[ 1. LE #100 ] GO+ ^% {' Q; M, L6 B6 N7 N' ?9 {
x! N9 K. W: l
A.B兩者有一種共通的特性,領多少錢就做多少事5 L$ w, j& U0 Y8 Y
如果順序顛倒,可能是使用者需要截長補短(抓長補短)的性質,有互補的作用
+ M8 l% t# Z" w5 W2 w2 A* o6 ]( x. I9 N2 ^9 z% e3 k7 ~ V/ ]/ b& K
* k7 S# I" o0 C
以上為個人的經驗 |
|