|
|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区
您需要 登录 才可以下载或查看,没有账号?立即注册
×
本帖最后由 羅蓋仙 于 2013-7-24 22:53 编辑 9 `% b2 N( {! Z* T: F
: U: m2 ^9 ?& G' ]% K: j
使用者如果需要使用一連串的IF-GOTO,我想說明一些事項與特性
$ V9 c6 g( s, \9 F. Z6 g* E, Z {% L, q+ O2 ^; f" S3 n
形式1:% W6 ]" d3 o0 n8 _; H5 F+ m
#100=选兵(陸.海.空)9 N5 R- v# _: I
IF[#100 EQ 陸 ] GO1
9 L, }5 A) G" {7 {' yIF[#100 EQ 海 ] GO2
$ Y+ p! D, \$ ?; N+ f3 XGO3(鼻用說.當然是空軍)" x" C" J0 Q% o
(或不用GOTO3省略它.可以的話在GOTO2後面直接就做,屬於空軍加工部分)
0 K- _4 B$ Q7 K" P8 n/ W& J9 M因為EQ是很確定.鐵定的東西..使用者可安排快捷性(調整順序)
. M( [- e& E+ V8 o6 o8 X2 @. y
0 Y& q: O* e, r* e. d1 I0 w如果怕#100有錯誤.如輸入天兵..可在#100輸入後...與GOTO之間進行防呆
: c9 h {$ _" N5 B# r也可不防呆,加工會鑽錯,誰叫使用者故意去測試玩弄MACRO,沒防呆功能用戶最好空跑一下,確定好再做3 c9 E' r: H$ }1 V" n
$ u$ n% A0 h) f還有一種防呆寫法:$ `( Y; h( G" U! e! M, e9 _7 B, A
#100=選兵(陸.海.空)1 }+ |: L# ^ l4 Y$ L
IF[#100 EQ 陸 ] GO1
/ C _: c. A2 ~" d- j: wIF[#100 EQ 海 ] GO2
& [0 k& p7 ?8 F9 wIF[#100 EQ 空 ] GO38 u4 x% _5 \* J" c& E
#3000=1.(如果流到這裡表示#100投入有誤)5 t" r( C1 s' ?
N1....( ?3 {; C6 E u5 M' c4 F
" F+ A; j# ~ g# K6 aN2....
8 a" x) B; x3 A1 R/ E& J3 T" n a- N: s5 M
N3....3 V" B' a: N. E. r8 V7 a
/ t: c# A7 {. s# K3 Z4 ?0 ?
M993 v! R, h$ a" r% e
; n2 ?4 e, F5 H& z, K l8 l3 p* c. U* E- s+ {* N: J% m5 F. O* ?" t
形式2:
- w3 [) _4 ~3 b& e7 N. w+ C# k3 Z#100=領國家的薪水(人民,老師,軍警,政官(民意.立法))- d( p* z8 Z: U0 I
IF[#100 EQ 0万] GO1
, E, Q6 g3 e K! K6 Z, I. ]IF[#100 GT 5万] GO25 L3 R1 Z% o7 q: Q- i
IF[#100 LT 5万] GO3
4 R" r( ?) Q% W# z( v" uGO4(可省略條件式[#100 EQ5万])老師
( c, y9 b+ R) E..........+ Z0 l8 Q* T" e+ ~
N1 人民( L( }, q3 T& m" ?8 Y9 X
% p e" V: \( o, c* f |) rN2 政官
# m0 m: n# M3 t, D, f( w+ j7 X0 g' \$ t/ W7 _4 t1 H! A
N3 軍警& v3 C& ^1 V" i$ X
" `. B [: Y" A
N4 老師
$ L4 O% \: N. C' x9 R& v- P/ W& _+ f9 J
M99& d) j* A% |$ S/ d
$ E% o; G5 M! H& H※注意1與3可能會有衝突,有前後順序性的3 ?/ w* k* @7 h1 U5 j# M& K! O
形式2是以新台币計價的. U* `) z3 P. E% n& Z& Q
( C, \9 L l2 l( n
m, ^* c" s- w8 G5 g另外一個IF-THEN的例子:' K V# y, _" p. i7 l x w% _* G
假設#100=已用四則運算,算好的結果
* a2 E$ i7 ^3 M) C" |3 b, M& c2 \# j) j" }4 L; t+ M1 f' D- O
IF[#100 EQ 2.5万] TH#30=10./ i. q" j9 |, O# U, `
IF[#100 EQ 0万] TH#30=10.
- f+ i& u& X9 ]; {4 JIF[#100 GT 2.5万] TH#30=20.
- e9 B. e d- S6 Z4 Z+ h2 O$ u, a; wIF[#100 LT 2.5万] TH#30=15.! t- ~5 l3 w7 i, n Y+ m. [" i0 T: S
N1 G1 X#30 Y#25.......開始加工
$ }( Q' f6 x6 F9 \5 m, P8 q+ e# F q5 _) A
上述2與4性質雷同可能會有衝突,不能這樣寫,可改寫成,A法:! j7 y, k% J& H3 f
; O+ j! e0 ~! N$ ZIF[#100 EQ 2.5] TH#30=10.. o0 B! \/ \+ z2 z
IF[#100 EQ 0.] TH#30=10.
6 {$ t+ w! R# t! I& rIF[#100 EQ 0.]GO1或IF[#30 EQ 10.]GO1(讀到2先跳開)0 O; }' E, G, v1 I* `
IF[#100 GT 2.5] TH#30=20.9 k) t! a6 e5 w4 v) [
IF[#100 LT 2.5] TH#30=15.
% c* q) h' D7 g9 a# q- r; W0 tN1 G1 X#30 Y#25.......開始加工
1 I% R9 u; @0 D* R. e+ J6 \ `! q
& V, M* w9 Z$ V) @8 I' U5 S或改寫成,B法:使用或閘(OR)# ~' A! s. d8 X/ k
#30=10.
/ R# S/ u/ G/ NIF[[#100 EQ 0.]OR[#100 EQ 2.5]]GO1(判斷好就先跳開)
5 Y% D0 b& r7 w( MIF[#100 GT 2.5] TH#30=20.
7 p6 h: T( O( _5 ]IF[#100 LT 2.5] TH#30=15.
; ~: G8 D, ]1 p' ]N1 G1 X#30 Y#25.......開始加工+ X8 M! Z' y- O( N& u) _! C. Q! s6 L
4 Z/ }1 |7 ]( J) R* P) ^( K4 u還有一種不使用TH的寫成,如下:
q& ~( v! k4 M* r4 m30=10.
2 \! Y$ h& c/ IIF[[#100 EQ 0.]OR[#100 EQ 2.5]]GO1
- B+ K0 k6 E! K2 U3 A( x#30=20.
9 |# ?2 F( H; RIF[#100 GT 2.5] G010 m G' u/ o- X, n& f- z: w4 D! U+ u
#30=15./ ]* \, K$ v5 N4 ^" l7 P2 U. l* \0 {
IF[#100 LT 2.5] GO1<---此條件式可以省略4 x2 n' q. y! r# c
N1 G1 X#30 Y#25.......開始加工; V+ j5 b" w, o' `& q) i
; s' c8 m- m K% s2 m" T#30會一直有數值去覆蓋它
) }$ X4 Z) N" v" t3 A$ [+ S- O- W& B3 f8 [
/ b" o# m4 r3 l4 x形式3:理髮. x" y# l9 `" l
#100=2兵(1.)、一兵(1.5)、上兵(2.)、下士(2.5)、中士(3.0)
7 V+ c$ S& `' |+ f$ ]IF[ #100 LE 3. ] GOTO理15分頭
- U; R( \$ @# F) R5 l$ G/ SIF[ #100 LE2.5] GOTO理12分頭: p7 p! B3 Z7 o/ W) I
IF[ #100 LE 2. ] GOTO理9分頭) q- O- K% s: i. u% B! Y
IF[ #100 LE1.5] GOTO理6分頭
2 i6 x) J# C# H* ]' BIF[ #100 LE 1. ] GOTO理豬頭
0 a9 F& C4 l8 ~5 ?. Q$ c* O( i# u. O
! I3 [( |# s" ?4 G+ _7 u9 J8 E※順序可顛倒,這不會有衝突,如阿兵哥人多可考慮置於首,考慮快捷性
& O- H& i* K) Z* B0 M, e
; W: r" `- f$ S6 a! v) Q/ a4 h另外的一種B式
# `! x9 X0 k1 x% \* nIF[ #100 GE 3. ] GO
; y, |8 n0 h$ \IF[ #100 GE 2.5] GO/ R/ r6 |; L. @( t* S
IF[ #100 GE 2. ] GO: S2 R' o6 P" E3 c* A+ Y* k
IF[ #100 GE 1.5] GO, |( `* N$ N2 _1 v( S9 b6 x0 l1 W
IF[ #100 GE 1. ] GO
& {1 a4 e9 y9 y$ n$ U順序不可顛倒喔!不然少將會理成狗頭% O% J) p( }) p8 [% d9 z
此例不能安排、佈置快捷性0 r5 \5 D- W A" E6 |. A3 M
& P$ S- s% l( D$ s3 f5 A9 t, ]: R
0 @1 C9 k5 g6 o* Y+ U) A; J' F
A式:有點像把數值逼到牆角比,自不量力可直接看出3 K! t* u \, m1 p0 L, g u
B式:像在自由空間比,如果順序調換
# b( ^4 Y. r9 ^! a: l. T有錢人也可以去小吃店吃牛肉麵+ W4 T; ]) U% z, t3 s1 U9 S
高學歷也可撿回收物當職業
6 e* A; T. B t/ h' X& d! ?
9 s) p! D: i: k$ p E( m4 x _2 b再說一下B:順序不能上下倒立,只能轉身如3 ]4 ~9 }/ |( }' X* F
IF[ 3. LE #100 ] GO4 F7 ~9 E8 P, `2 c+ E' N" H2 A6 `
.... i* m* K2 J+ R9 S+ a6 w0 A
...
. b2 K+ u, t f1 l6 ?3 b3 R7 PIF[ 1. LE #100 ] GO/ o$ @" L8 s9 Y8 ?) R9 p" e: W
+ v6 e4 S) |! e) v, v/ r! ?' B
A.B兩者有一種共通的特性,領多少錢就做多少事! \% \- l& o5 } @
如果順序顛倒,可能是使用者需要截長補短(抓長補短)的性質,有互補的作用' U. ~. H$ d9 K
& } K6 l8 E; g+ @
! E6 ~) j: [! R/ n3 N2 w; g% |
以上為個人的經驗 |
|