|
|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区
您需要 登录 才可以下载或查看,没有账号?立即注册
×
本帖最后由 羅蓋仙 于 2013-7-24 22:53 编辑 $ J' D1 U; \$ k# z/ p2 W! {1 J
+ I/ T* t# `$ R, C ~0 ?3 H1 r
使用者如果需要使用一連串的IF-GOTO,我想說明一些事項與特性2 a' g( m! v0 n8 L. g# _/ J+ {
2 i1 p! G& `( P形式1:
, Q5 ?1 b) n4 Q, I+ d6 d+ i& u* F7 d |#100=选兵(陸.海.空)
- T& Q, q2 g$ P' JIF[#100 EQ 陸 ] GO1& L" b% t- ]: B/ \3 [' h9 d. i
IF[#100 EQ 海 ] GO2/ p; Z2 ]1 T% V) S: a' u( s {( s
GO3(鼻用說.當然是空軍)- M; ^1 {' y" C
(或不用GOTO3省略它.可以的話在GOTO2後面直接就做,屬於空軍加工部分)9 I3 d! T, y! v+ V4 [& T: X2 ?+ _' a
因為EQ是很確定.鐵定的東西..使用者可安排快捷性(調整順序)+ s; G) B! A! E4 S1 @( N
) `* f7 U/ p. h% P$ q% C7 n/ I9 e
如果怕#100有錯誤.如輸入天兵..可在#100輸入後...與GOTO之間進行防呆! `3 c: I7 h1 f: ]- J6 R' C
也可不防呆,加工會鑽錯,誰叫使用者故意去測試玩弄MACRO,沒防呆功能用戶最好空跑一下,確定好再做+ v6 O+ L% I2 I2 Q2 r- G! K, o
1 K6 Z9 ]) u( h# W p
還有一種防呆寫法:* ^+ ` W! O- i! B7 }0 l% O& b8 ~
#100=選兵(陸.海.空)
5 o5 e* C% w4 \4 G; N7 oIF[#100 EQ 陸 ] GO1
6 ]! a% D" |+ S& tIF[#100 EQ 海 ] GO2; ~9 A( ?4 N' z% c
IF[#100 EQ 空 ] GO3
6 [1 l# y5 V, u" l9 O#3000=1.(如果流到這裡表示#100投入有誤)* h, q) B, q( X% q2 Z
N1....
' H. s U' K' k- U( `1 P& c) a; p( H9 J0 K/ Q4 M% w% V4 S5 \
N2...., F/ U2 z* B i5 K
! a8 g8 c5 N6 I1 D
N3....
1 l8 ~ A2 A8 q# w- p- J7 A {- ~1 t9 F% X8 L
M99$ E) h5 }+ e) W! k' ?
6 @ }& e0 I& c6 ^% U
" q4 }. C5 V7 S, k* g形式2:3 A! ~' g' {- s$ P9 K
#100=領國家的薪水(人民,老師,軍警,政官(民意.立法))7 {, \+ z8 C. e# d* N' g
IF[#100 EQ 0万] GO1
& N# Q+ z F! q! R& t0 h, YIF[#100 GT 5万] GO2; R- b8 p% E4 v2 e& h
IF[#100 LT 5万] GO35 g- g q& K! Y
GO4(可省略條件式[#100 EQ5万])老師# v9 ?% I2 s' X' D
..........0 d- J0 ` I( o8 {* m$ i1 C
N1 人民
" i) P% ~4 ^5 K' F) W, G5 r8 `% H
7 F+ B8 h a0 H4 g* `( FN2 政官$ ?/ B! T; o' c2 ?2 s/ E# z8 H
' H0 T+ N: i* n8 v
N3 軍警5 F" @) k2 _) ^
- B6 Q. P/ t$ j2 u2 I# @; ]/ L' n) f
N4 老師9 d# r% O% C3 E3 j" a. u
* V6 M7 T2 u8 z$ p3 c1 @' L. G& GM99
+ Z4 Q [$ g$ f$ ]/ U1 b% a
' a' X2 d" C6 n※注意1與3可能會有衝突,有前後順序性的% \6 ?; R2 p9 `& Q7 ?2 y
形式2是以新台币計價的
' E) a. Y; b+ w5 Q2 p% Y8 Q* J, V; U; P% _/ g
! o p) i9 |( @& a$ \6 L% H1 W! {
另外一個IF-THEN的例子:. G0 s' U r6 c5 I" v
假設#100=已用四則運算,算好的結果& y, J" G I7 ]6 C2 s
2 S/ E' V. }/ E4 X5 n2 \( OIF[#100 EQ 2.5万] TH#30=10." U; _3 i+ a8 b# l
IF[#100 EQ 0万] TH#30=10.
" k- I4 u* Z+ p9 x4 uIF[#100 GT 2.5万] TH#30=20.
: J; ?! K6 I& @1 o% ZIF[#100 LT 2.5万] TH#30=15.) f, G6 i! U& W$ s, K0 \
N1 G1 X#30 Y#25.......開始加工) ]. V) W( v U3 R# @. d8 r/ j
! q' C8 {- _8 H2 ]6 \
上述2與4性質雷同可能會有衝突,不能這樣寫,可改寫成,A法:/ a; Y, _0 b. b2 Q: j
* |$ v9 T! L. M& f# [- T# p3 S3 ]' UIF[#100 EQ 2.5] TH#30=10.& n2 J g# V* M$ P
IF[#100 EQ 0.] TH#30=10.
1 D5 g0 @- Q# g! J {( TIF[#100 EQ 0.]GO1或IF[#30 EQ 10.]GO1(讀到2先跳開) J3 Q7 ^: }1 I7 A
IF[#100 GT 2.5] TH#30=20.
: o- v6 H. m# V+ O& ], b" D9 `IF[#100 LT 2.5] TH#30=15.
& Z# @7 z; x) Y8 _N1 G1 X#30 Y#25.......開始加工5 b3 u2 F' L# k. M2 C
5 o9 s8 F/ E( a) D [7 q# M7 V或改寫成,B法:使用或閘(OR)
0 v% U0 C, n; R; c; L6 U#30=10.; i' S: ~ b+ i; A
IF[[#100 EQ 0.]OR[#100 EQ 2.5]]GO1(判斷好就先跳開)# B6 Q& z. h& E9 b- F
IF[#100 GT 2.5] TH#30=20.' x2 o3 V0 V( x. i
IF[#100 LT 2.5] TH#30=15.
: Q' R" T, R2 ]) P, ]3 yN1 G1 X#30 Y#25.......開始加工; k" D. g( G$ z. e( i
9 h. D& l+ u# {3 z9 R* D9 L
還有一種不使用TH的寫成,如下:
* q; D) I0 [# W' x: d: L30=10.
# K' P- T" S2 m* zIF[[#100 EQ 0.]OR[#100 EQ 2.5]]GO14 `! a6 D" g, P$ o3 J8 u
#30=20.
! @" w7 G0 M0 i5 O& L6 s' ~IF[#100 GT 2.5] G01& U7 @+ o5 f' F% Q- h
#30=15.( U% {) m8 I- F9 B; X( V& E% h* p
IF[#100 LT 2.5] GO1<---此條件式可以省略+ @/ @! q% E( \: d" R+ n8 Q
N1 G1 X#30 Y#25.......開始加工
$ P! ~ j L3 f& m7 e! [; q6 K h. F l0 M; P/ W( ]( x
#30會一直有數值去覆蓋它
* q. S6 d8 \" l6 `, S
, O+ Y& a- G5 p: M3 t/ C) u+ `' t- ?- \& W( P
形式3:理髮
2 t3 y; d' Y, J; f) P#100=2兵(1.)、一兵(1.5)、上兵(2.)、下士(2.5)、中士(3.0)
6 z7 Q& \! ~7 ?6 ], JIF[ #100 LE 3. ] GOTO理15分頭+ u+ l9 R6 \7 ? S5 V* U
IF[ #100 LE2.5] GOTO理12分頭# m" S9 l- A$ K3 m7 P1 Y+ [4 H
IF[ #100 LE 2. ] GOTO理9分頭
! s, f: U8 i, K3 @IF[ #100 LE1.5] GOTO理6分頭
9 j7 X' {! f/ H" O1 n- b: H0 bIF[ #100 LE 1. ] GOTO理豬頭
3 u7 A: C4 q, O' z: r$ o
/ M1 a! c7 t% k( @' W( t, ]/ u※順序可顛倒,這不會有衝突,如阿兵哥人多可考慮置於首,考慮快捷性
2 @: ~ Y/ Z. ^7 X% }4 b
' _1 {. y) e- T, b$ j. \另外的一種B式! b, {$ V# H' F, K0 w: V
IF[ #100 GE 3. ] GO
& L; D9 u( A4 j8 h1 } ^* u- pIF[ #100 GE 2.5] GO! |0 ~7 f" G! W0 ?" q% t
IF[ #100 GE 2. ] GO( n1 L, b$ D- i% V& ~. w( N) d
IF[ #100 GE 1.5] GO& j" u y, ]+ L( }
IF[ #100 GE 1. ] GO
( ?, Y# {1 E3 A! Y4 d# N; m- N$ Y順序不可顛倒喔!不然少將會理成狗頭( r2 Z0 G. C. i
此例不能安排、佈置快捷性; t+ [, C ?& d5 t' W" c: l: p
; P! S. W) t8 J/ b5 {7 h) m7 T
9 a' H; r8 W" CA式:有點像把數值逼到牆角比,自不量力可直接看出
: U: R. y) M3 [: |B式:像在自由空間比,如果順序調換+ g1 h3 l v$ v8 G' D
有錢人也可以去小吃店吃牛肉麵1 Z& h2 h" W% M j; N8 N+ e4 a
高學歷也可撿回收物當職業5 ^ ?9 G: v1 {8 \0 r) |
8 @9 J/ |6 y+ i
再說一下B:順序不能上下倒立,只能轉身如
: z: V0 ]9 V. Z% ]" Y% N" O RIF[ 3. LE #100 ] GO1 i# T' G t, a8 f/ [
...; M: v, b7 W5 d: u5 d9 j/ U
...
4 L) h/ v9 g: ~, G4 B3 C. RIF[ 1. LE #100 ] GO! i6 q1 H, e5 r/ s" l! ]2 J) g
. b1 W) }0 O, I; _' nA.B兩者有一種共通的特性,領多少錢就做多少事
- W- D" v; D1 b5 s如果順序顛倒,可能是使用者需要截長補短(抓長補短)的性質,有互補的作用: Y8 v% j9 I3 o( O0 y( p
) W8 j P0 [! I
/ `9 Y$ F$ O7 P0 B' A# _3 x" @以上為個人的經驗 |
|