|
|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区
您需要 登录 才可以下载或查看,没有账号?立即注册
×
本帖最后由 羅蓋仙 于 2013-7-24 22:53 编辑 9 X9 k# i- M9 U, y
4 V9 K8 b0 m# \ }% \使用者如果需要使用一連串的IF-GOTO,我想說明一些事項與特性
( L/ z7 Q3 n R# S5 w9 y3 R( H& v# [2 f
形式1:4 I+ h0 i/ _+ B8 D, Z! c6 M+ k9 l
#100=选兵(陸.海.空)
$ A8 s" D/ _1 KIF[#100 EQ 陸 ] GO1
1 C; x' H f7 U9 y) vIF[#100 EQ 海 ] GO2
) s3 A8 x/ K* z7 {+ r4 i9 ~2 M/ v tGO3(鼻用說.當然是空軍)
9 L" c5 F* K+ Y' z(或不用GOTO3省略它.可以的話在GOTO2後面直接就做,屬於空軍加工部分)
2 Q- M }' j4 p8 }5 v% i. i因為EQ是很確定.鐵定的東西..使用者可安排快捷性(調整順序)4 Z, B O, m) p
6 h+ T" z% `, |! Q2 v, K
如果怕#100有錯誤.如輸入天兵..可在#100輸入後...與GOTO之間進行防呆
, y- G) c. Q: R也可不防呆,加工會鑽錯,誰叫使用者故意去測試玩弄MACRO,沒防呆功能用戶最好空跑一下,確定好再做
! X0 \( L4 Q$ v2 o' @$ N; n9 l0 S1 W3 B. E3 K
還有一種防呆寫法:
/ g6 }7 q/ ], Q#100=選兵(陸.海.空)
$ P5 A6 l4 t/ d3 SIF[#100 EQ 陸 ] GO1
* L- r k; [1 @1 x9 [* vIF[#100 EQ 海 ] GO25 [/ c: n& I7 H# ^! L3 f
IF[#100 EQ 空 ] GO3
/ J$ |. O: ]. g! @3 j* p6 I#3000=1.(如果流到這裡表示#100投入有誤)
3 G& V, P! J. b- wN1..../ K5 o9 R2 b9 ?
+ V" P. ]1 m2 ]1 e! w
N2....
% W4 K# {) a; Q/ V4 S/ v4 M' P% v6 y) Q+ J& g. r. r
N3....$ {- j+ ]* c( J/ \7 `6 [ o5 Y
- l, f1 O( U2 ]7 x* K- y6 w
M99( P2 G8 X# N, c. N
+ w5 Q# G& E, l \8 l+ s
$ v8 G" K9 Y- ?, \- w! i形式2:
0 F7 C4 Z3 O1 w! ^9 |8 l#100=領國家的薪水(人民,老師,軍警,政官(民意.立法))
' x' k1 m, x. k% uIF[#100 EQ 0万] GO1$ K5 s( Y; e9 D9 \
IF[#100 GT 5万] GO2; R8 r2 v" ?7 T# X/ i4 z. ]' q# e
IF[#100 LT 5万] GO3
2 D8 m. i% o: T* h3 Y& oGO4(可省略條件式[#100 EQ5万])老師* w( u2 i8 S9 ^; U
..........
( I3 O m, w2 g3 w( i3 GN1 人民: t4 a; Q; [" }! a
; P z+ u& U) `! n# C9 F! R! TN2 政官
$ O& `' |6 W3 v
- K+ s9 l( E& D* A. \, `3 }4 W) EN3 軍警7 J8 z& L( w" ?& H3 f; Y
/ a) _9 e, f, [$ E1 c, d* R; b, NN4 老師# e$ H. c1 c- N3 z0 k
! T- @3 u0 E0 J4 f+ z$ F( }M99. K' p! a3 s, S! k7 b# [, |0 O
# l1 m0 {* n C* w0 Q' w: N: H( N
※注意1與3可能會有衝突,有前後順序性的
' d, o: B \( V0 Q/ X形式2是以新台币計價的
5 L5 Z# u E I4 x4 n" ]( W! A
( X: r4 o% X0 q9 U% e
另外一個IF-THEN的例子:
& G/ }8 z; C: C假設#100=已用四則運算,算好的結果
9 C6 J5 _' U- C5 N, Q+ c) W3 q, x
0 I. z% } B# \% D* @IF[#100 EQ 2.5万] TH#30=10.
1 d* r1 x. P- V" _9 }8 H: x0 LIF[#100 EQ 0万] TH#30=10.
! H% b8 u6 K# CIF[#100 GT 2.5万] TH#30=20.
' `- S* p8 G& g, s* v: z AIF[#100 LT 2.5万] TH#30=15.
7 j3 K+ P1 h" f, c; @0 i y% p. t4 aN1 G1 X#30 Y#25.......開始加工- E! x4 p* M6 G6 F& [, b& [4 P( A
- K7 H. G9 {; y7 }- t$ |0 N
上述2與4性質雷同可能會有衝突,不能這樣寫,可改寫成,A法:
7 u' ~4 w" E. a2 {* ?. M0 j
6 c# u4 d: p" J o; hIF[#100 EQ 2.5] TH#30=10.* x' n" D4 D% R& C/ q) K
IF[#100 EQ 0.] TH#30=10.
# q4 f2 p$ I$ LIF[#100 EQ 0.]GO1或IF[#30 EQ 10.]GO1(讀到2先跳開)+ y5 m1 B6 T4 F2 D3 \/ ~
IF[#100 GT 2.5] TH#30=20.
, L0 M8 l6 `" p$ F1 S" j. AIF[#100 LT 2.5] TH#30=15.5 Q; D! O" _. T
N1 G1 X#30 Y#25.......開始加工4 N+ ^' l* L3 m, F: G* o
" ~ w; V" f! ^# Y% E6 K, U
或改寫成,B法:使用或閘(OR)0 T% ~+ Q9 W8 W5 L& ~- k* ~" b
#30=10.
7 d; k) U) p8 E7 W/ }9 P1 q* V! [IF[[#100 EQ 0.]OR[#100 EQ 2.5]]GO1(判斷好就先跳開)8 M# ]" E" U @# @; V% W8 j. m
IF[#100 GT 2.5] TH#30=20.; Q& ` U' H( {* a! i3 X
IF[#100 LT 2.5] TH#30=15.6 g) C3 b. H% } p! l2 {
N1 G1 X#30 Y#25.......開始加工2 h& q) M' M# T
% }2 Q. A6 ~. f1 j2 P還有一種不使用TH的寫成,如下:
/ t% H" h) P8 c, b' O# Q$ _30=10.4 i9 I0 g- O2 P* u- z. ]& d7 P: G
IF[[#100 EQ 0.]OR[#100 EQ 2.5]]GO16 m% L( l+ V( d" Z4 I+ f
#30=20.
' ?! ?3 j, d3 ^IF[#100 GT 2.5] G01/ M5 f6 {: F9 e M# r5 ~+ p. T
#30=15.1 t+ `4 A& X' Q$ f7 J" [0 g& {
IF[#100 LT 2.5] GO1<---此條件式可以省略$ P% U! m/ A, }7 H
N1 G1 X#30 Y#25.......開始加工" f- ]0 j/ v4 H- n
; N8 Z Q" f& U3 n
#30會一直有數值去覆蓋它
U0 y1 f1 Z; S2 z" K3 q$ A: @1 Y$ `8 d( P0 [; a# @- v) f
! p2 r. R2 L) p& `, u6 P* ~1 P8 l形式3:理髮6 O1 I+ w/ \' Z5 ]
#100=2兵(1.)、一兵(1.5)、上兵(2.)、下士(2.5)、中士(3.0)- t3 E: y) m* S" b8 d1 _- |& X
IF[ #100 LE 3. ] GOTO理15分頭. Z6 Q) v* P, k" W% S6 u
IF[ #100 LE2.5] GOTO理12分頭
: J# J' ^$ f) e3 l' \8 Y5 xIF[ #100 LE 2. ] GOTO理9分頭: e! }! J) a% V( a) U9 f3 p
IF[ #100 LE1.5] GOTO理6分頭. @# G9 Y) \& E9 R
IF[ #100 LE 1. ] GOTO理豬頭1 O: _0 {- a0 F) }: j
9 N8 m/ i7 d' Q( {5 H※順序可顛倒,這不會有衝突,如阿兵哥人多可考慮置於首,考慮快捷性0 b7 T8 r/ \) b- X$ ]4 t
6 z3 v2 h7 p8 v6 Q% }
另外的一種B式) g; F/ m! n+ \) p0 E4 O8 E$ G6 @
IF[ #100 GE 3. ] GO; c/ ~5 W+ G1 t2 k, B5 v8 y6 R
IF[ #100 GE 2.5] GO0 Q. b1 a& C$ n3 d7 l5 h
IF[ #100 GE 2. ] GO5 r# @* ]" O8 N/ Y/ x; }' `4 H
IF[ #100 GE 1.5] GO
, f" \* J+ M9 {' T* ^IF[ #100 GE 1. ] GO
0 j# _* d0 \2 @1 L順序不可顛倒喔!不然少將會理成狗頭
/ P# K% ~. D1 {: u- \6 K; g4 k" D此例不能安排、佈置快捷性" S2 J& c& \* U: R+ z' {' B
3 }6 f' `4 V: B0 l- t2 \
n9 g* k, ?* _& r) |1 }. bA式:有點像把數值逼到牆角比,自不量力可直接看出6 V( z$ }* q: J4 @
B式:像在自由空間比,如果順序調換
* S L, i" M4 A4 p, Y. l6 _有錢人也可以去小吃店吃牛肉麵1 L- R( b* S& E5 d) f
高學歷也可撿回收物當職業
7 N3 p$ ^, r4 M0 {
% g5 u+ s0 B6 G: _) Q" X& t/ l再說一下B:順序不能上下倒立,只能轉身如
4 y0 W9 [/ v$ e- u! aIF[ 3. LE #100 ] GO
( \ e/ M; Q" [- @...( F3 _* X5 O. O2 J
...
! T" u% Q( ?+ t% F0 ~/ N: nIF[ 1. LE #100 ] GO
( ~1 c/ ~- }' p7 i# Q$ u& B& K) s+ G# F! ?3 b4 O9 J
A.B兩者有一種共通的特性,領多少錢就做多少事
+ Q: H, U# f. _! x如果順序顛倒,可能是使用者需要截長補短(抓長補短)的性質,有互補的作用
( I. C$ F1 G$ g7 Q I
* F2 H: ~: _: g& z( L. v. s. n( q! S, g5 V# m: P
以上為個人的經驗 |
|