|
|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区
您需要 登录 才可以下载或查看,没有账号?立即注册
×
本帖最后由 羅蓋仙 于 2013-7-24 22:53 编辑 ! S" V, q: `! t+ Z
) M& l( r) ? B使用者如果需要使用一連串的IF-GOTO,我想說明一些事項與特性
) B) b& u" T# F" i0 S
( h' w! B, _: e! R- q. b, A形式1:/ s' ?* b5 j4 c; _# s
#100=选兵(陸.海.空)6 D8 u. L7 A, g
IF[#100 EQ 陸 ] GO11 @4 A3 O; s! ?8 R
IF[#100 EQ 海 ] GO29 \9 P: Y$ R$ b& Q% C# E
GO3(鼻用說.當然是空軍)
" d- V+ ?) T& B4 ~! I4 g0 F4 @, o(或不用GOTO3省略它.可以的話在GOTO2後面直接就做,屬於空軍加工部分)
3 Y4 t8 x+ s' U: P4 |+ r: `因為EQ是很確定.鐵定的東西..使用者可安排快捷性(調整順序)
# b( {8 } K+ A) E- K$ |* ?4 ]% |. V4 P5 ~& o/ l$ R7 `. }% N
如果怕#100有錯誤.如輸入天兵..可在#100輸入後...與GOTO之間進行防呆6 ?9 } q8 q" W7 D3 H, m5 Q
也可不防呆,加工會鑽錯,誰叫使用者故意去測試玩弄MACRO,沒防呆功能用戶最好空跑一下,確定好再做; Y0 h. ^& ?" ~2 N5 v6 F2 w2 m5 R
6 X8 Q; L* h3 Y( m2 V8 ?( }3 X還有一種防呆寫法:: f$ n6 p& _( S2 p& x! N: j+ D7 G8 Z7 Y
#100=選兵(陸.海.空)
7 @; n* B& R# S4 j4 QIF[#100 EQ 陸 ] GO1
4 y& o4 Z6 B, ~2 M8 g' ?IF[#100 EQ 海 ] GO2
$ d: g% H% s; G( GIF[#100 EQ 空 ] GO3
, B8 V/ Q+ @2 E' S: z' U#3000=1.(如果流到這裡表示#100投入有誤)
1 r: w. [+ D9 t. i9 p& gN1....
( r$ x/ d5 ~. g
! t0 i' P; w t) e( nN2....
! C" Y' b! G0 ~( _5 Y- d+ \; [3 [+ Q* M
N3....& j! Z7 H! @( V
. R8 R+ ~* w X4 r! ~7 B9 I: c2 ]M99
' P; Q( {* h# S$ Z5 j6 N
/ n/ P% X/ N# k( A- }0 y' \) b4 e) V C
形式2:
4 q' V. |4 ~" m+ I- _$ x$ ^- z#100=領國家的薪水(人民,老師,軍警,政官(民意.立法))2 j/ t2 K( m0 s% a5 R
IF[#100 EQ 0万] GO1
3 j, T7 x: H8 Z' V6 ]* I! \IF[#100 GT 5万] GO29 `3 D' h: t7 ?6 I' Z
IF[#100 LT 5万] GO3
; \, J" x; `% kGO4(可省略條件式[#100 EQ5万])老師+ Z$ Y, {1 t, W& G1 v
..........' |& _1 o" X! v. Z3 F7 C
N1 人民
, `7 R: i( Z1 F& W! s8 j* K
4 ~. C3 q- a* T9 xN2 政官( p5 i. Y1 \' D3 ^0 J
2 h8 u/ H3 z- \- pN3 軍警
0 i* l( J9 o2 D) A6 g
8 o+ I) N/ z! o4 E7 u# dN4 老師8 q( b4 b) c6 X( Y
& b+ T& [8 V% o4 x( l
M99( q5 d: l7 F3 `" ~1 s
; y2 ]& T: O& M※注意1與3可能會有衝突,有前後順序性的, t: H# t# Q2 s; {
形式2是以新台币計價的
+ f0 l, }4 @6 x* l1 q$ s9 A( l4 ~6 n' l
4 }7 {& @( v% p1 d/ Z另外一個IF-THEN的例子:7 D$ p3 p" b* i" v d
假設#100=已用四則運算,算好的結果
8 T9 l9 j% U* H% s
c' \% z7 Q1 T+ }: K1 ?+ H) [6 [5 ^IF[#100 EQ 2.5万] TH#30=10.
6 d- `. z8 ^/ W4 G0 YIF[#100 EQ 0万] TH#30=10.9 ^$ l) N8 y1 P- A2 X- f
IF[#100 GT 2.5万] TH#30=20." r, k0 c6 L7 W# T! w: _3 E* [
IF[#100 LT 2.5万] TH#30=15.5 {& ]7 F, j0 U1 u/ L
N1 G1 X#30 Y#25.......開始加工' \$ `3 z: }* v1 u- h
% _2 H0 G$ i; M j& a% D
上述2與4性質雷同可能會有衝突,不能這樣寫,可改寫成,A法:
d* P2 q f, {/ _, v2 R& Z, u( b8 @
IF[#100 EQ 2.5] TH#30=10." v9 e I+ ^- t
IF[#100 EQ 0.] TH#30=10.3 c$ ]( n0 S4 n2 b2 B7 T K1 Y& Y
IF[#100 EQ 0.]GO1或IF[#30 EQ 10.]GO1(讀到2先跳開)+ i0 H" Z! S2 [2 Y9 O* v& e
IF[#100 GT 2.5] TH#30=20.
" q. L0 j" l- `/ b) ~* G$ B& J: YIF[#100 LT 2.5] TH#30=15.
$ g( | o" R; z) E# u v$ n5 P8 y+ v0 vN1 G1 X#30 Y#25.......開始加工" k6 H/ Z/ u5 a: | k
. D" X) S& \. s/ U
或改寫成,B法:使用或閘(OR)
$ Y* ?" u5 J7 s' y#30=10.2 t1 }8 e; t* P! F9 Z
IF[[#100 EQ 0.]OR[#100 EQ 2.5]]GO1(判斷好就先跳開)
3 f3 }; [1 f gIF[#100 GT 2.5] TH#30=20.0 l: U9 ]) J# [) c, y# `& ~
IF[#100 LT 2.5] TH#30=15.9 h* g9 F3 w6 Q2 L
N1 G1 X#30 Y#25.......開始加工
# Q. _ ?: E$ {
0 r$ s1 r$ j+ z: j6 T; v還有一種不使用TH的寫成,如下:
- Q6 V$ u8 `# h/ F30=10.% D! X# ~" h/ X, V
IF[[#100 EQ 0.]OR[#100 EQ 2.5]]GO1
1 Y, a. u' f" [ V5 r, g#30=20.% x+ U6 M4 }; A) D! A
IF[#100 GT 2.5] G01/ u/ \4 E5 G/ s7 N7 ^% B+ i
#30=15.4 X& o7 m6 v! v" `1 v
IF[#100 LT 2.5] GO1<---此條件式可以省略
9 G1 R. w5 D/ wN1 G1 X#30 Y#25.......開始加工. w/ \5 r+ L% L0 y/ F0 O% h
& V+ P. I( f( S#30會一直有數值去覆蓋它+ n. g: q8 y7 e3 G# C/ O' b% c
7 ~. w% g5 R$ \! G' H0 o. a
" _$ I4 A/ Z$ E形式3:理髮
9 W+ _) q4 z" c1 R* w" _+ a#100=2兵(1.)、一兵(1.5)、上兵(2.)、下士(2.5)、中士(3.0)3 j- }( R* Y; n, Y, C" h
IF[ #100 LE 3. ] GOTO理15分頭
. ], R! Y) A5 T* uIF[ #100 LE2.5] GOTO理12分頭
5 I. o0 d! G9 h8 a% OIF[ #100 LE 2. ] GOTO理9分頭
: b7 C8 H |) u' ~2 m' B1 |IF[ #100 LE1.5] GOTO理6分頭
, t+ A9 S+ y6 ]IF[ #100 LE 1. ] GOTO理豬頭: Y$ U) v. F1 R# {
0 L* O' T& I% T" J2 a" N※順序可顛倒,這不會有衝突,如阿兵哥人多可考慮置於首,考慮快捷性
/ N+ W/ k: v6 g& m; d: w
7 | y! @( D- W另外的一種B式+ n$ g8 |% @/ [1 ]0 J
IF[ #100 GE 3. ] GO
6 ?4 ]2 f) Y" T% b/ nIF[ #100 GE 2.5] GO
6 E' _; ]8 R8 xIF[ #100 GE 2. ] GO# T9 ^2 z9 g, P
IF[ #100 GE 1.5] GO7 b' X* q4 C6 j5 I" N
IF[ #100 GE 1. ] GO* F+ D2 h/ k: l+ f3 L* D" E% H/ t
順序不可顛倒喔!不然少將會理成狗頭
( J- m! L5 ~- U& I$ |& B此例不能安排、佈置快捷性
: }! ~6 A5 d4 V5 l; f. K' |% L3 M, T) L7 [- V4 v
+ z {% m1 V! C
A式:有點像把數值逼到牆角比,自不量力可直接看出: B; {, z# v- \
B式:像在自由空間比,如果順序調換% p+ e+ f0 E/ J# `* l. @: P
有錢人也可以去小吃店吃牛肉麵 t/ {% n! S: M# Z
高學歷也可撿回收物當職業
) a3 r1 H/ e3 K( V9 l& a* B& J$ u* u6 P. x8 R0 C1 d
再說一下B:順序不能上下倒立,只能轉身如, c Q; M Z' U
IF[ 3. LE #100 ] GO N, x/ @$ H* h8 p# r
...
2 {9 J1 j$ }+ `0 w9 v...
$ K9 u1 M( L, i3 HIF[ 1. LE #100 ] GO
4 \' Y" Q6 W, `" b% S
% |# V' c4 a! ~: SA.B兩者有一種共通的特性,領多少錢就做多少事
* {, r+ @. i: A$ h如果順序顛倒,可能是使用者需要截長補短(抓長補短)的性質,有互補的作用( E' V7 `. m: B
, V. [+ W9 n( U3 z0 d
4 Z$ l1 _6 c. F. t
以上為個人的經驗 |
|