|
|
馬上注冊,結交更多好友,享用更多功能,讓你輕松玩轉社區
您需要 登錄 才可以下載或查看,沒有賬號?立即注冊
×
本帖最后由 羅蓋仙 于 2013-7-24 22:53 編輯
^4 s* D2 e# v% ~3 A
2 b7 S2 z2 y6 x使用者如果需要使用一連串的IF-GOTO,我想說明一些事項與特性
8 t- f; M' b, Y5 y: x1 j! i3 ?
$ V0 U) Q; V# E; J- T: Q0 O, W' T& P形式1:
8 ^/ B; X) U2 \- e; [2 {/ N#100=選兵(陸.海.空)2 Y/ W2 ^- f( T, Q/ [1 G
IF[#100 EQ 陸 ] GO1/ _7 `8 W- y" b* {+ Y) \
IF[#100 EQ 海 ] GO2- X# h3 b: D+ ^: |1 ^
GO3(鼻用說.當然是空軍), c2 {, Z, m7 ], @9 M
(或不用GOTO3省略它.可以的話在GOTO2後面直接就做,屬於空軍加工部分)- u; O9 k& q* k; N3 }
因為EQ是很確定.鐵定的東西..使用者可安排快捷性(調整順序)
# z+ w f1 _" I$ L$ Z2 _* w3 |, m3 z# {7 [
如果怕#100有錯誤.如輸入天兵..可在#100輸入後...與GOTO之間進行防呆' c3 m( @0 b A" O
也可不防呆,加工會鑽錯,誰叫使用者故意去測試玩弄MACRO,沒防呆功能用戶最好空跑一下,確定好再做0 u8 u h/ b2 {
. s" C" j; l3 r6 }/ e9 G
還有一種防呆寫法:
g ~7 P+ o* D# {! @8 C: m# L#100=選兵(陸.海.空)
" c( ~* _+ P: v) GIF[#100 EQ 陸 ] GO1
- F5 {& n+ S$ XIF[#100 EQ 海 ] GO20 t2 x: Q+ w3 _4 M7 ~: }0 r
IF[#100 EQ 空 ] GO3$ u: H0 X, t* `4 N1 E* X/ j i& m
#3000=1.(如果流到這裡表示#100投入有誤)+ h. K3 G* H! S9 m& c$ _( g) d
N1.... d4 v! j9 F# V8 ?- S' |% k2 v
! A* [) h# I# D4 D' G. I/ {: @8 VN2....
; e3 o5 O4 v- c) ^/ `7 p N3 t ?6 W4 ]) N! s0 i# S* M3 B# I
N3....+ X2 t/ _6 N5 E, A9 l3 v
+ Q* q2 V$ W1 R: q e( I- yM99
0 ]! [1 y5 x; m! |
( F& |, L9 M) a) m4 p9 b6 T6 p6 m6 b; _/ h
形式2:6 l- N4 z* q2 L
#100=領國家的薪水(人民,老師,軍警,政官(民意.立法))4 d5 z1 C; b' h/ g% P
IF[#100 EQ 0萬] GO1+ B4 w( N d1 o
IF[#100 GT 5萬] GO2
' J8 g7 H, u& M2 V6 OIF[#100 LT 5萬] GO3
9 \2 x9 ?2 s: M4 {, M$ c! s& VGO4(可省略條件式[#100 EQ5萬])老師
" O# u2 H% D3 h, e J& K7 h..........$ n5 I: O; H! X8 h7 D8 u4 v
N1 人民; q" g( d; j1 G# y7 M' Y1 S
X4 C- q3 f& I: T% i
N2 政官
1 s8 G( [4 `' B7 s+ a" x, J- T: V `2 N3 r( n; e# M& w
N3 軍警
" [( _( s* W Z) L% P/ Q+ v5 j1 G* `- r/ \* s+ {# o4 ?" m5 o' E
N4 老師. \0 v9 B1 `- w( q
& I. a; W( o( ~0 }
M99
3 S% l$ v0 c# \/ p+ d& `* _) }* j2 B/ ~) N
※注意1與3可能會有衝突,有前後順序性的
2 L/ A" T' m# ^) C形式2是以新臺幣計價的4 W. F# W- M; u! r3 ]6 t
6 }( H; _# v% T V, [1 R. _
% h# p" [' \& S7 I7 u1 h2 t
另外一個IF-THEN的例子:
% v. X) d/ R: a: X2 P; K6 z假設#100=已用四則運算,算好的結果8 o+ \: e z( C$ @* g( r) t2 |
* e6 N4 w1 ]9 D- V: i5 [. v- U! i! ]
IF[#100 EQ 2.5萬] TH#30=10.
# d, s8 L$ O4 h% S2 k/ j& lIF[#100 EQ 0萬] TH#30=10.
# Q) u( k: e; N7 r- `/ P# o! fIF[#100 GT 2.5萬] TH#30=20.
. ?5 g6 q; ?3 R3 S6 k. K, j4 XIF[#100 LT 2.5萬] TH#30=15.& X6 F" a6 b5 _# d* U' u5 q
N1 G1 X#30 Y#25.......開始加工
! C* l. e E' L! H3 w+ v. x' O/ S
# m7 O* I5 O5 r1 F/ z上述2與4性質雷同可能會有衝突,不能這樣寫,可改寫成,A法:
5 f4 M8 s% b, _1 u1 q- h, A
! a3 Q0 L/ x/ {' ?3 S6 U1 [IF[#100 EQ 2.5] TH#30=10.& g% u7 X5 t$ a8 z8 w* {: f3 d
IF[#100 EQ 0.] TH#30=10.
: N2 g! h/ z5 C: K1 ^ OIF[#100 EQ 0.]GO1或IF[#30 EQ 10.]GO1(讀到2先跳開)
" l# T0 d9 D; r0 D1 e$ n$ LIF[#100 GT 2.5] TH#30=20.
2 h9 j0 ^0 g; p! i" \IF[#100 LT 2.5] TH#30=15.5 J/ k; \+ b0 U4 v0 s' N
N1 G1 X#30 Y#25.......開始加工6 r* P2 i t- l! o
: L4 d( ~; e9 \8 c5 L3 k& V或改寫成,B法:使用或閘(OR)
& |* Y* _, r: n1 b+ r3 {#30=10.
/ c! t4 ?/ r" b6 j" X H$ pIF[[#100 EQ 0.]OR[#100 EQ 2.5]]GO1(判斷好就先跳開)+ y( ?" H2 U" j- o- I* J& ]' P
IF[#100 GT 2.5] TH#30=20.. a4 C4 U5 ?* { Y, ?1 @ N
IF[#100 LT 2.5] TH#30=15.! J: X. y) j8 a2 |
N1 G1 X#30 Y#25.......開始加工
9 l0 p+ f |7 U- u6 c/ J9 D* \1 f1 h. t; Y3 {* V) ?7 t( n# y
還有一種不使用TH的寫成,如下:
8 [! W9 L4 k) W2 p! s30=10.9 w- v* M" K$ L7 V/ q' P
IF[[#100 EQ 0.]OR[#100 EQ 2.5]]GO14 c: e. H- i4 k) S3 \8 H
#30=20.
" c6 s: _% R1 d* O$ oIF[#100 GT 2.5] G01
+ j7 P; b" [$ f# l6 L! V- |- s9 [#30=15.
4 X9 K7 f/ Y. D9 N2 aIF[#100 LT 2.5] GO1<---此條件式可以省略
9 d0 G; v5 \8 ^3 E3 GN1 G1 X#30 Y#25.......開始加工
. P* E7 b2 d2 H {3 t1 N& B$ J4 ^; g
#30會一直有數值去覆蓋它* U; _; l3 ~- Z3 X( K* G# q" t
7 _* I6 R1 T0 X; l+ a
' G) w) O: R5 V6 E' f& n4 x3 `3 `
形式3:理髮& J# u; k6 i H/ f
#100=2兵(1.)、一兵(1.5)、上兵(2.)、下士(2.5)、中士(3.0)4 d0 d9 @) K1 `2 y
IF[ #100 LE 3. ] GOTO理15分頭3 z$ l6 s1 ]/ ~3 u
IF[ #100 LE2.5] GOTO理12分頭9 }" ^) V: x: b: O6 B% z
IF[ #100 LE 2. ] GOTO理9分頭
: u( h0 g, ?2 ^IF[ #100 LE1.5] GOTO理6分頭6 X3 O7 T; r) @# A9 h: a0 k$ K4 ^3 r
IF[ #100 LE 1. ] GOTO理豬頭6 Y: F* z7 l- e# J+ q. Z
4 q: S0 S6 P' @: E※順序可顛倒,這不會有衝突,如阿兵哥人多可考慮置於首,考慮快捷性8 o0 D+ z! F7 `: q
: Z. N7 H) C! X- ^3 r% R% J5 a) y3 j另外的一種B式
5 u* X4 }3 ~* a6 gIF[ #100 GE 3. ] GO
8 g6 Q& E" g, t- g4 s7 f: s8 zIF[ #100 GE 2.5] GO
3 ]/ _" K3 w4 o, ]9 PIF[ #100 GE 2. ] GO0 S _. N# ^- [. z7 t' I/ x
IF[ #100 GE 1.5] GO
9 C+ ^7 c/ \& \4 C. ]# S% g8 PIF[ #100 GE 1. ] GO4 ?. a8 K: p, w7 \' y0 l
順序不可顛倒喔!不然少將會理成狗頭
5 O" r; L @5 X2 ^: }1 `2 K9 H% ]此例不能安排、佈置快捷性
0 p, C7 ~7 y" V6 K8 ~1 F9 x9 C6 S5 ~$ `& ^' O; P2 b
8 x% q! n* J3 A% `
A式:有點像把數值逼到牆角比,自不量力可直接看出1 I: x: N4 K& \! @# {+ _
B式:像在自由空間比,如果順序調換9 {5 @* e# c \4 j
有錢人也可以去小吃店吃牛肉麵8 H: B' |/ s* G& q
高學歷也可撿回收物當職業! L2 e$ V/ h/ a5 Q
( v8 _& V0 c6 b: y/ Q4 u" T再說一下B:順序不能上下倒立,只能轉身如
. P" k) M8 E+ h& C, b- r5 i$ JIF[ 3. LE #100 ] GO" n3 e" ^% ?6 Q/ r3 `0 Y: ^
...
" m1 w& R- }, c...( Y6 n" A8 g% O
IF[ 1. LE #100 ] GO
3 _5 C4 q6 p9 F* f4 a
' W0 T' e1 X2 Q! OA.B兩者有一種共通的特性,領多少錢就做多少事 b0 O" L0 V0 `; G% m
如果順序顛倒,可能是使用者需要截長補短(抓長補短)的性質,有互補的作用% \8 d: Q. U* y. M7 r3 E3 D, {0 z: G
/ m7 e7 ?" D3 U- e5 G" |& g
! i9 {9 v N; P% p' N: v, y3 w& T0 |以上為個人的經驗 |
|