|
|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区
您需要 登录 才可以下载或查看,没有账号?立即注册
×
本帖最后由 羅蓋仙 于 2013-7-24 22:53 编辑 7 ?1 y( s9 `& ~) y2 [
6 q% d2 R8 K: c% l" S8 A. i% w" E* r使用者如果需要使用一連串的IF-GOTO,我想說明一些事項與特性 H$ n0 S8 p2 m; ~
( J4 V. X" T' X( z( S c4 W. @
形式1:1 U' [5 y+ |" ^' N3 O: w9 c5 n& K
#100=选兵(陸.海.空)
0 ~* K1 x; |: {IF[#100 EQ 陸 ] GO1" I5 I; K" u$ n, n% b: s
IF[#100 EQ 海 ] GO2
6 M- W; ^ ~) ?/ g8 lGO3(鼻用說.當然是空軍)* d, N6 S' ]) E& {+ K" s
(或不用GOTO3省略它.可以的話在GOTO2後面直接就做,屬於空軍加工部分)
; @5 m/ G" l0 ~因為EQ是很確定.鐵定的東西..使用者可安排快捷性(調整順序)0 w6 y) ?' q; X% E2 i
1 Z) M7 p& }& a d如果怕#100有錯誤.如輸入天兵..可在#100輸入後...與GOTO之間進行防呆
* L0 A- j k3 X也可不防呆,加工會鑽錯,誰叫使用者故意去測試玩弄MACRO,沒防呆功能用戶最好空跑一下,確定好再做
: B: r0 B6 Y" ~) h' L) q5 u: |
/ i" U' p5 |" ~還有一種防呆寫法:! O9 l4 N' u% A2 R3 [+ ~/ |* T' W
#100=選兵(陸.海.空), B) ?+ s7 G/ B$ J' G6 x$ V
IF[#100 EQ 陸 ] GO1* L( G/ M& w- Q* B) l8 \/ B; ~& J
IF[#100 EQ 海 ] GO2
' t2 G, r: g; B* \& BIF[#100 EQ 空 ] GO3
" h/ O; ]- Z# p4 ]#3000=1.(如果流到這裡表示#100投入有誤)
; A4 R8 V; |! jN1....+ s# i* ?% X) f8 u$ U( j
4 S3 }; z( \& i
N2....
* P% f' i% J2 d2 R8 I! B
+ l) G6 H3 Q, ~: C7 S2 S/ U) f8 ZN3....
1 S: K1 w8 ]3 E% p
" O& ^* G& ?( |, S1 T! aM99) y( |' e# [8 M# t! f' s# x
9 I- h; w/ I) P: V+ c" r4 u# n- Q X4 S
形式2:
# q% v/ M1 K2 H% m#100=領國家的薪水(人民,老師,軍警,政官(民意.立法))( D' O9 W* d- w& v
IF[#100 EQ 0万] GO1 [8 N6 H" a* z& k" K; ^
IF[#100 GT 5万] GO2
# G& Z d9 K; U/ ^6 Y- `7 vIF[#100 LT 5万] GO3
; ?2 Z3 V: W' W/ ^. } L$ eGO4(可省略條件式[#100 EQ5万])老師& O/ X3 f6 H1 c- v8 }
..........4 I5 w; b [# I8 @3 ^& r
N1 人民
" a0 _9 |- ]5 t) V6 N, N) \
' p g8 X& t+ @( h( E/ X( _* X6 U. lN2 政官" N& b) `, x/ Z+ j2 p" _
' r6 z* i% R6 `" m: r. Q2 w6 j
N3 軍警6 F, U% o( T) \3 z' f6 O
# v; Q% I1 u# I. b7 d, E
N4 老師' w4 {, V( e9 }9 u0 C
J+ I8 A1 ]/ N6 n9 m
M99
( ~1 c9 p5 v2 _% J5 s: W
3 {0 i1 b5 Y2 F6 @* ~※注意1與3可能會有衝突,有前後順序性的
# m, s" I% W9 U% e/ z- i* N7 r' Y0 @! ^7 R形式2是以新台币計價的7 r& a5 x$ W8 G' f3 z4 `+ ]# b
, U, R9 q. }8 v3 ]. }# B) J0 A @& S$ I
另外一個IF-THEN的例子:
5 ?5 D$ Y ~3 z+ B假設#100=已用四則運算,算好的結果
3 D6 u* {3 g. r- K; B$ S* |5 r4 s1 z- B/ e; b( j
IF[#100 EQ 2.5万] TH#30=10.) {/ H6 n8 |5 b
IF[#100 EQ 0万] TH#30=10.$ |4 {2 r. C# \" k6 N, i) C2 @- e
IF[#100 GT 2.5万] TH#30=20.) }! T6 Q& V4 z$ p
IF[#100 LT 2.5万] TH#30=15.
" b6 D7 Q, Y; k8 u' q' ]6 gN1 G1 X#30 Y#25.......開始加工
# @% v! n) \' j" w2 V2 v$ j: `; U7 ]8 _3 b
上述2與4性質雷同可能會有衝突,不能這樣寫,可改寫成,A法:
, r! [9 m9 z. [% `* M0 \6 n! J7 L {( ~
IF[#100 EQ 2.5] TH#30=10.) |& G, y H8 F8 F; y* O
IF[#100 EQ 0.] TH#30=10.( S V$ u }; h/ y! i
IF[#100 EQ 0.]GO1或IF[#30 EQ 10.]GO1(讀到2先跳開)
& P* q/ i& N1 c5 r+ {IF[#100 GT 2.5] TH#30=20.6 R# n, A' F1 X+ W$ @6 I
IF[#100 LT 2.5] TH#30=15.
a7 U/ M( ~' h# m" o; y8 d& UN1 G1 X#30 Y#25.......開始加工# q" U" Q$ d/ j$ Y
, |$ U' U# m. l) N! i
或改寫成,B法:使用或閘(OR)1 o6 f) G' I2 M8 d/ ]7 Z* x; G
#30=10.
0 H, t. g7 q: ]# c1 XIF[[#100 EQ 0.]OR[#100 EQ 2.5]]GO1(判斷好就先跳開)) w, l; c e' e# [+ U
IF[#100 GT 2.5] TH#30=20. {: W' K% [4 g! I4 y
IF[#100 LT 2.5] TH#30=15.
5 Y' _1 [) V4 r" gN1 G1 X#30 Y#25.......開始加工
+ p# b+ F- D, J0 W
" l$ ]3 m1 X l* h還有一種不使用TH的寫成,如下:
3 C. D0 |1 |6 c1 y8 u; Y9 L, V30=10./ X# H1 E( Q) g4 f: a
IF[[#100 EQ 0.]OR[#100 EQ 2.5]]GO1
: n* o8 G4 k5 ~" O" h: |2 L- |#30=20.8 G9 Z1 h$ q- U( o) t9 d& `
IF[#100 GT 2.5] G01" a9 ^! M6 ~7 V. a( ]
#30=15.) k8 \6 o. o& {* D6 K4 v
IF[#100 LT 2.5] GO1<---此條件式可以省略
1 r4 g8 t a6 e7 L# k# `+ @N1 G1 X#30 Y#25.......開始加工
2 K" W9 }1 @* R+ u$ q# N$ y8 Q. Z/ Z7 o' U, o- C' I' {0 U
#30會一直有數值去覆蓋它
/ G+ }4 M! G& O1 q# x0 W3 c' J; R$ F' b
- T! e8 ^7 ~( I; c2 g/ S/ B" S形式3:理髮5 @. L; b5 a2 J% X+ c+ e" v
#100=2兵(1.)、一兵(1.5)、上兵(2.)、下士(2.5)、中士(3.0)) s5 T z1 L; z# ~( C9 t; p9 t
IF[ #100 LE 3. ] GOTO理15分頭
: Q4 v/ O# t; r2 O+ c; oIF[ #100 LE2.5] GOTO理12分頭5 r6 I# ?) p5 }4 b+ |* Y0 J; \
IF[ #100 LE 2. ] GOTO理9分頭' F2 R% B' O) S
IF[ #100 LE1.5] GOTO理6分頭* [1 f/ Z9 G+ n
IF[ #100 LE 1. ] GOTO理豬頭
5 C7 j1 L' B0 `; J3 z) Z+ R2 C. a2 B9 u! X
※順序可顛倒,這不會有衝突,如阿兵哥人多可考慮置於首,考慮快捷性- ~" T9 G" M4 w1 R+ ?- z
" Y- R9 x' a9 P
另外的一種B式3 z4 p% F8 M$ Y
IF[ #100 GE 3. ] GO
2 `2 z; p9 h% K; A+ WIF[ #100 GE 2.5] GO! i5 z# f/ K! E/ Q: R
IF[ #100 GE 2. ] GO' N* Y7 c- e ?6 c3 H1 d5 L
IF[ #100 GE 1.5] GO
; d% x3 H# n: g hIF[ #100 GE 1. ] GO1 E# T6 g$ S! v, D% D M
順序不可顛倒喔!不然少將會理成狗頭% J4 E1 r% m7 b0 h @, y
此例不能安排、佈置快捷性/ O' {. |/ x6 _
: S( }2 i7 A* P8 v* n$ ^8 C9 ^5 ~& M$ u: n; |/ M; W
A式:有點像把數值逼到牆角比,自不量力可直接看出
( A _: x7 ^- j# GB式:像在自由空間比,如果順序調換% d s6 a5 q2 \$ b
有錢人也可以去小吃店吃牛肉麵: j) r; n5 _" a0 V
高學歷也可撿回收物當職業
- M6 E' O* _# R2 n4 f; r; A7 Q9 A! y0 Q: k
再說一下B:順序不能上下倒立,只能轉身如8 ^' ~0 J4 P5 H9 z! \. B' G" f
IF[ 3. LE #100 ] GO
4 L9 m. B! Z6 S# r1 x% D; \...% ?/ u. a4 f2 U
...# i! Z! K/ P2 d" d% L" h. N
IF[ 1. LE #100 ] GO8 j9 N5 a4 B/ p* H7 E
% r1 Y* y* E" B% a: l1 uA.B兩者有一種共通的特性,領多少錢就做多少事. Z2 }9 y* j/ Q5 _- L, E4 t
如果順序顛倒,可能是使用者需要截長補短(抓長補短)的性質,有互補的作用 i' O, t* z1 |7 X
3 ~- d! J4 J6 k% M0 z3 D$ F
0 ^% Z9 M$ T! K' i
以上為個人的經驗 |
|