|
馬上注冊,結交更多好友,享用更多功能,讓你輕松玩轉社區
您需要 登錄 才可以下載或查看,沒有賬號?立即注冊
×
本帖最后由 羅蓋仙 于 2013-7-24 22:53 編輯
. @* }9 d' ^6 y2 O7 D, D- |3 n( h; O5 r' @" n( h3 t! H
使用者如果需要使用一連串的IF-GOTO,我想說明一些事項與特性. {2 l( B4 i% V. \/ s/ v5 ~
7 G. F) y* b9 S8 |# B0 t形式1:
2 z+ n$ F6 i; B z4 S#100=選兵(陸.海.空)+ y S( j4 {! O3 a9 n0 Q/ B
IF[#100 EQ 陸 ] GO1
* ^/ O3 c# h$ D: S: B4 l$ j+ RIF[#100 EQ 海 ] GO2
6 h$ Z4 M$ `+ U8 cGO3(鼻用說.當然是空軍); R9 E2 t6 q9 E& `7 F
(或不用GOTO3省略它.可以的話在GOTO2後面直接就做,屬於空軍加工部分)
# Q' g0 W4 v2 N" b/ H1 v) L因為EQ是很確定.鐵定的東西..使用者可安排快捷性(調整順序)
- \6 s, ?& B1 O& o/ | \4 w |+ \8 [
如果怕#100有錯誤.如輸入天兵..可在#100輸入後...與GOTO之間進行防呆
: i* _5 B) j( ^7 Q' V5 V h也可不防呆,加工會鑽錯,誰叫使用者故意去測試玩弄MACRO,沒防呆功能用戶最好空跑一下,確定好再做; O; a* J ]$ H4 H% o* _, v
, f7 ?6 W+ D; R9 k8 V9 @$ A7 j
還有一種防呆寫法:
- x& n9 I" H, Y' o9 j0 z#100=選兵(陸.海.空)
; j, K- ?$ }: j( u0 ?3 t. v9 xIF[#100 EQ 陸 ] GO1
8 P% u, T" e7 M$ j! K" zIF[#100 EQ 海 ] GO2
. y$ H. h1 Y8 r4 jIF[#100 EQ 空 ] GO3
" U: n* v; \! Q#3000=1.(如果流到這裡表示#100投入有誤)
4 V" E" z# p1 D4 i9 M x* NN1....+ v9 w* r' R1 t1 K5 t
4 f4 n% s+ a: L* \N2....
5 H/ L% U5 B! J' z$ ^* B: p- a& \2 W8 P" G& `8 [9 B3 `# A
N3....9 C1 f; j5 F7 K$ E' K; e
$ h, a. B' l% p6 bM991 @, o2 X# f1 c0 s
' F& ^6 i) e1 N& T+ ?- z
; T; C- f3 }" N2 `
形式2:, H! Z! s5 Y7 V- `. L- ?; `/ _& n2 y) R
#100=領國家的薪水(人民,老師,軍警,政官(民意.立法))- T1 E6 o% p+ w
IF[#100 EQ 0萬] GO15 C: M. J. ^* e
IF[#100 GT 5萬] GO2
9 [. x0 D7 p" j( ~IF[#100 LT 5萬] GO3: R" p. @$ }$ Y8 `! k
GO4(可省略條件式[#100 EQ5萬])老師- L6 X: x: y% @- j0 j- d! w5 d0 V
..........$ L* b4 O5 U& Y: |4 W1 J# h9 ~
N1 人民: H( V' i' i3 x6 [: `
# d. p! ]# \% }
N2 政官
t' e/ X$ K; H6 k, ?' T0 ^6 H" g) _: u
N3 軍警
* P! w9 }$ y6 V; E7 Z A0 b/ v4 `) {- K- }/ N) m5 W
N4 老師7 K* G0 _" ~$ K6 b3 o4 u* z
( r0 L' J) K0 x- {7 i$ e) |" }5 J& r
M99- t5 ^1 {/ @- }; f- E) B
9 D: y, g5 \0 R9 N9 z. b: m, j% b※注意1與3可能會有衝突,有前後順序性的% g7 g. z$ j6 D! Q
形式2是以新臺幣計價的7 R; ~) O) F+ c6 _: w
/ j7 ^ i( |, _# `+ z. T, _& c$ _+ m' j6 P1 J# x9 r
另外一個IF-THEN的例子:
3 _# H5 g& p' i假設#100=已用四則運算,算好的結果
" S" h: o" o+ p9 G" k
5 y2 N) r* a9 [6 J7 EIF[#100 EQ 2.5萬] TH#30=10.6 J1 s$ y. ?9 R- ~7 h' u0 @5 g
IF[#100 EQ 0萬] TH#30=10.
$ Y1 u; `! g) i! a! ~; r' x# {% bIF[#100 GT 2.5萬] TH#30=20.: S8 K8 G$ O, W A; O k: n6 \# A
IF[#100 LT 2.5萬] TH#30=15.
) @4 `0 h$ _: J- C* g- R2 L' |3 BN1 G1 X#30 Y#25.......開始加工- z& S6 U; i1 F8 B7 Y
) I I2 g. l- `; q! b6 v上述2與4性質雷同可能會有衝突,不能這樣寫,可改寫成,A法:" i* K. |" P+ o$ C0 {* S6 H7 c- W
% z+ R2 S3 A; J- f- UIF[#100 EQ 2.5] TH#30=10.! D: B; q' f+ C7 v% p7 U; U& ^
IF[#100 EQ 0.] TH#30=10.
, T0 k* v+ W. x) l9 m0 l) y: \3 g' P0 ~8 |IF[#100 EQ 0.]GO1或IF[#30 EQ 10.]GO1(讀到2先跳開)' s3 a4 F+ w& u
IF[#100 GT 2.5] TH#30=20.
1 F- f% Q2 v: g7 E! C$ gIF[#100 LT 2.5] TH#30=15.; p+ H. y! w% K* U
N1 G1 X#30 Y#25.......開始加工
0 ^% O. M0 w6 d' g: `7 Z! d
5 f, k; l7 ]# _或改寫成,B法:使用或閘(OR)' S7 ?% ~- |: z+ @* w3 c
#30=10.. C* t2 D2 ?3 [8 v- I7 n& X
IF[[#100 EQ 0.]OR[#100 EQ 2.5]]GO1(判斷好就先跳開)! g8 L4 i5 o$ ^5 P' X
IF[#100 GT 2.5] TH#30=20.
) e3 }$ M( b) ~# w8 pIF[#100 LT 2.5] TH#30=15.; y! o1 J; A* u. i1 Y- x' x
N1 G1 X#30 Y#25.......開始加工; Q2 p, X0 N" o/ B# H( b5 f
H; ~4 ~ A9 o2 w- T: u! P* y) ^& g
還有一種不使用TH的寫成,如下:0 D0 X+ j9 ^' R6 h
30=10.( L' I# h$ ~( I3 ?! ^! x
IF[[#100 EQ 0.]OR[#100 EQ 2.5]]GO1
7 o( ?+ n; m3 v7 [& c9 ?3 Q#30=20.+ _/ } |* [' d0 w1 g( _! I
IF[#100 GT 2.5] G01
* \2 | b3 | ? B0 y, r#30=15.5 K I5 D7 N8 D
IF[#100 LT 2.5] GO1<---此條件式可以省略" i+ U, c1 ]. b6 L* F
N1 G1 X#30 Y#25.......開始加工
& k& L( P- v3 u# y4 u
$ y, C& l, R. B9 E0 h#30會一直有數值去覆蓋它
; d) X& Z2 {7 [. Y2 a# l) l
7 E7 t9 a1 g4 t. r* B8 d/ v1 G7 a/ p1 [
7 x* |, F7 h4 }2 U! J w) c/ V2 x+ M形式3:理髮
% |" K9 | L% R#100=2兵(1.)、一兵(1.5)、上兵(2.)、下士(2.5)、中士(3.0)9 I9 o+ ]! _/ b$ X; d
IF[ #100 LE 3. ] GOTO理15分頭
9 K( e0 T7 ?4 T2 K. eIF[ #100 LE2.5] GOTO理12分頭
8 M6 z. L& q8 P& j! G. V g& s7 b. h1 QIF[ #100 LE 2. ] GOTO理9分頭
8 r0 S8 d) A4 e. C8 aIF[ #100 LE1.5] GOTO理6分頭
) K6 u( {( R( O6 YIF[ #100 LE 1. ] GOTO理豬頭1 a4 k- ~% T7 Y* f9 W; w! N0 @/ l
) N: _( X- ?5 N5 J/ v% u
※順序可顛倒,這不會有衝突,如阿兵哥人多可考慮置於首,考慮快捷性
6 X6 L( \2 \/ h' j+ z' k4 u" b2 t8 e9 l! [4 N; K G' c- D
另外的一種B式, T% @- ?& [. M+ M) W* m
IF[ #100 GE 3. ] GO& Z7 K! D& I% a0 t
IF[ #100 GE 2.5] GO
8 g/ B4 O% n, M* A9 yIF[ #100 GE 2. ] GO
, J- [( p, S# j" F% h9 u- x fIF[ #100 GE 1.5] GO* b, S, M2 i! j _( V3 u4 z
IF[ #100 GE 1. ] GO
9 ^$ t4 o" y1 t% r順序不可顛倒喔!不然少將會理成狗頭
6 c- s6 s% q/ a此例不能安排、佈置快捷性
5 y6 _7 @$ e& Z: D% n
" X* f( R2 W6 p0 [ e$ ]1 c9 b
& W6 v+ J; A Q4 @ d, eA式:有點像把數值逼到牆角比,自不量力可直接看出, K$ S) _2 q6 f4 |# x% {
B式:像在自由空間比,如果順序調換0 ]! h0 p5 b% }
有錢人也可以去小吃店吃牛肉麵5 {9 p; g7 z4 s6 l- S* e9 e3 y
高學歷也可撿回收物當職業
6 e7 v' p( C* b+ x; F& H0 p2 X7 y+ y1 _3 B4 T1 f
再說一下B:順序不能上下倒立,只能轉身如
7 V. ~9 H0 p2 f2 z4 E% [IF[ 3. LE #100 ] GO2 H8 ~, U( V, V6 H: Q
.../ k* C4 r9 W: A% a
...7 T {6 L! J! c9 M5 U
IF[ 1. LE #100 ] GO! @: \7 v( u/ d' J
* g* b4 P& W; b6 f" e/ S, w- m, TA.B兩者有一種共通的特性,領多少錢就做多少事0 ~2 x5 j) A8 ]: r) ?5 W" J
如果順序顛倒,可能是使用者需要截長補短(抓長補短)的性質,有互補的作用, f+ M" K, x* G6 y
# r0 \0 j$ `( o' c) t7 Z9 g
2 |- ~$ S0 \ }+ L
以上為個人的經驗 |
|