|
|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区
您需要 登录 才可以下载或查看,没有账号?立即注册
×
本帖最后由 羅蓋仙 于 2013-7-24 22:53 编辑
+ |2 i( e m* p0 x: G( [
: j1 ]' U7 K+ w: \+ }( W# m$ I使用者如果需要使用一連串的IF-GOTO,我想說明一些事項與特性/ L' ~' K) D! }4 P5 F+ h; y9 L
0 m8 e3 L) N; N. i& \
形式1:
. e8 U6 C6 Q* d. i5 z#100=选兵(陸.海.空)
. [5 T- M: \! n$ H+ B7 _IF[#100 EQ 陸 ] GO10 d9 C$ N) E+ J5 E) D) l
IF[#100 EQ 海 ] GO29 R% q1 v# o a) p4 y5 b) _
GO3(鼻用說.當然是空軍)
' f$ M0 S: S2 h* ]: x& A(或不用GOTO3省略它.可以的話在GOTO2後面直接就做,屬於空軍加工部分)% f0 c m2 w' |/ W5 k- O
因為EQ是很確定.鐵定的東西..使用者可安排快捷性(調整順序)
+ |% T$ Q, Z+ t% K4 i
' y1 |6 I; v! L- |) D如果怕#100有錯誤.如輸入天兵..可在#100輸入後...與GOTO之間進行防呆5 G' f# |9 w: i1 p! ?1 v5 L- g
也可不防呆,加工會鑽錯,誰叫使用者故意去測試玩弄MACRO,沒防呆功能用戶最好空跑一下,確定好再做
' g1 R. i' Q- r) _
: C+ [ O( A: }$ w還有一種防呆寫法:
, z8 ?9 A" }( x$ T#100=選兵(陸.海.空)5 T, d- T- [2 l/ F3 J
IF[#100 EQ 陸 ] GO1
7 h+ h5 _, K" a4 O. b4 ZIF[#100 EQ 海 ] GO2
" E" y& I& o FIF[#100 EQ 空 ] GO34 K+ x5 B) C# B4 K0 Q; Y+ @! ]
#3000=1.(如果流到這裡表示#100投入有誤)6 Z/ {3 [9 h# y2 T; U
N1....
) H' x, S2 I# k% e' S/ X) Z6 \* F) i D0 F
N2....
0 `* o. n' s8 j4 K
" c' e, S! A) a! XN3.... q. |$ {# C- q$ A
% H8 e. n/ k8 U! ]& o/ Y
M99
+ ^/ T5 Z- S% n' a
1 \: I; e) |2 F$ B. T
! T. w* Z/ ^- D2 { f形式2:
2 z: G9 N* I3 Y% h ^/ F#100=領國家的薪水(人民,老師,軍警,政官(民意.立法))
. }$ d ?7 B7 |IF[#100 EQ 0万] GO11 ~2 c( `+ l8 E L' `
IF[#100 GT 5万] GO2. ^, L" A1 i( Y! J; @, J) Q
IF[#100 LT 5万] GO3+ J ~5 }# i+ s0 _! H
GO4(可省略條件式[#100 EQ5万])老師
( W$ q! ?6 n) d* F; c/ h.........., x& {7 e D" e2 {
N1 人民- x$ p* ^3 M* z$ ] t/ g! G' i
7 A3 h& I+ w8 UN2 政官( w/ t! y+ |& x Y" l8 ~
0 d& O: m$ ]. P4 s, M! P' VN3 軍警6 {& \$ P* D% t4 }6 a
9 x1 L% K" |; k) ?) KN4 老師
1 _- V! S- r8 ^3 K# {, Q/ ]: N+ T. U9 P$ ]$ H: y0 k! c
M991 o/ a0 l5 t; u0 b' L- g- j. Y% ^
3 k; \1 Y+ I- \* E2 n※注意1與3可能會有衝突,有前後順序性的
9 Y/ A; p6 F0 P1 g6 V( O% [形式2是以新台币計價的
$ x N" j) `/ a) N7 C
7 P5 Y4 G/ t3 Q+ R( y" h) A* V1 p9 `
另外一個IF-THEN的例子:
, X7 [$ y7 N2 |假設#100=已用四則運算,算好的結果) M2 b0 ~! k" e$ M, M2 L" n4 S
& b1 ]/ |' ]$ j2 b- @: `; t2 m' F6 jIF[#100 EQ 2.5万] TH#30=10.
1 d y4 \7 p0 f) K) k0 p5 {IF[#100 EQ 0万] TH#30=10.
`6 R1 S/ t) }6 s$ m4 t% F# V# uIF[#100 GT 2.5万] TH#30=20.2 Z6 w+ j( L" Z: @: k
IF[#100 LT 2.5万] TH#30=15.9 `4 a8 Q) b# l# e
N1 G1 X#30 Y#25.......開始加工
! ^& b5 U$ Q8 o ]6 M9 ?3 j( @6 c1 a9 H1 F9 M" B/ R
上述2與4性質雷同可能會有衝突,不能這樣寫,可改寫成,A法:
2 @0 M4 _3 o$ t; ?3 h" r/ r3 J' Z6 ^) ?' M& Z
IF[#100 EQ 2.5] TH#30=10.( n4 }2 L3 x5 e* o: [6 y& |
IF[#100 EQ 0.] TH#30=10.5 l& |, k) K. U( ~2 \4 `
IF[#100 EQ 0.]GO1或IF[#30 EQ 10.]GO1(讀到2先跳開)
( w/ G- C, N( o; nIF[#100 GT 2.5] TH#30=20.
2 r: N8 H& ?' z aIF[#100 LT 2.5] TH#30=15.
0 I% ?7 t/ U8 ]# T6 e3 i6 YN1 G1 X#30 Y#25.......開始加工6 D8 @ o$ l; {
! b9 b, v2 L! v% m7 |4 X& i) Q或改寫成,B法:使用或閘(OR)+ D; h% \* n _! N) K7 H
#30=10.
& @/ _+ P% h7 b4 @, y) N; d% RIF[[#100 EQ 0.]OR[#100 EQ 2.5]]GO1(判斷好就先跳開)
; G' M# V3 ]/ x4 w5 ~3 A, cIF[#100 GT 2.5] TH#30=20.
4 ?$ k: {: e3 ~, ]% O: K( F z* ~: GIF[#100 LT 2.5] TH#30=15.; `. q; A% k/ r+ s: K
N1 G1 X#30 Y#25.......開始加工
' n3 O2 o# s) y* R. [8 m2 q
0 i. O9 f4 Y/ K) [還有一種不使用TH的寫成,如下:
( t. R9 |6 g" |2 L30=10.3 L* l& l, |& l8 [. A
IF[[#100 EQ 0.]OR[#100 EQ 2.5]]GO1
! ]7 l; b1 A0 [7 X$ [ [8 Q#30=20.
; @( Z* B) b' l) i( m- `IF[#100 GT 2.5] G01
i9 g% W0 I* Y$ M+ R#30=15.# ?* s) O6 l/ y# D; t+ e
IF[#100 LT 2.5] GO1<---此條件式可以省略) Z2 `" M/ g/ v! Q& I
N1 G1 X#30 Y#25.......開始加工
" L* d' I9 r- F7 J6 ^. C4 V
5 _0 I* R; K: J* g" t#30會一直有數值去覆蓋它
9 Q7 E7 I* ]! q2 m' Y" V) s3 ]3 X" z8 ~ Y% o- W" j* Z+ j
9 |( R( P3 A; m; {& W形式3:理髮& h9 W9 J2 [. M( ?, u8 L
#100=2兵(1.)、一兵(1.5)、上兵(2.)、下士(2.5)、中士(3.0)3 o" s2 c" U6 i
IF[ #100 LE 3. ] GOTO理15分頭
5 B9 ^* A% U: j( PIF[ #100 LE2.5] GOTO理12分頭
& O" }+ ^" q8 }) SIF[ #100 LE 2. ] GOTO理9分頭# B; P/ k6 c1 Y- T& F: D
IF[ #100 LE1.5] GOTO理6分頭; l7 W' f, c t7 P4 Q% X+ ]
IF[ #100 LE 1. ] GOTO理豬頭
W* u2 }) W- _2 y' v! Q# }9 |' g& F1 w
※順序可顛倒,這不會有衝突,如阿兵哥人多可考慮置於首,考慮快捷性
% [. L7 \$ y: a8 u1 M1 U" U8 x! E
另外的一種B式8 a; e# o9 K* z3 c, J& @+ F: `
IF[ #100 GE 3. ] GO
- J% ^& J3 k! E3 ]8 k4 A+ a3 Y# JIF[ #100 GE 2.5] GO3 h/ S9 X A& X$ t- D
IF[ #100 GE 2. ] GO
; }5 m( g1 G& G' H. V6 MIF[ #100 GE 1.5] GO
# O" o1 q* w5 [: o; jIF[ #100 GE 1. ] GO3 i3 ^. Y+ p! s/ @1 i, |
順序不可顛倒喔!不然少將會理成狗頭4 D7 p4 V5 W" j4 k2 k- Z* U
此例不能安排、佈置快捷性
- G4 c6 T. }( F8 {5 T# h! J% S
1 H# L! R9 Q5 m% H% f, u p+ Y7 M; ~3 Z3 A+ e4 D m1 p# |- l7 R
A式:有點像把數值逼到牆角比,自不量力可直接看出; |, a" N+ F- Y: c9 r D- v1 G
B式:像在自由空間比,如果順序調換, e( T$ e. @2 L8 d* ?% G+ O0 ~1 s
有錢人也可以去小吃店吃牛肉麵& X' I" J3 P- O) y7 y+ @
高學歷也可撿回收物當職業! w7 |2 H; A- o& M, |
2 E1 k, m( q, h' t! v E* I再說一下B:順序不能上下倒立,只能轉身如
* K9 s4 r' Z; D. R+ AIF[ 3. LE #100 ] GO4 M; T# r8 J5 ~# q" _) r% Q. m$ e
...
$ J: F6 p9 Z# D0 s; o...
5 r I' |" s$ A! R" ~. sIF[ 1. LE #100 ] GO/ ~2 Y4 y$ N- P1 d# m
3 j; K$ n7 j4 T% A
A.B兩者有一種共通的特性,領多少錢就做多少事* b* W' x4 F) u+ ~: G
如果順序顛倒,可能是使用者需要截長補短(抓長補短)的性質,有互補的作用+ e2 E7 t7 Y, Y+ D$ ?
! a& k" [+ ?" G' J0 C' H( X( @3 m4 Z; |0 B& i* x3 r. r
以上為個人的經驗 |
|