|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区
您需要 登录 才可以下载或查看,没有账号?立即注册
×
本帖最后由 羅蓋仙 于 2013-7-24 22:53 编辑 ! b1 {7 p* U, J, a5 U
" V2 U& w, t, M
使用者如果需要使用一連串的IF-GOTO,我想說明一些事項與特性; p7 K; `6 V4 f b; k4 v2 }) s" `
# h- P/ G- E, l. i* n- r: s) C
形式1:
2 D) ~. ~1 D; i; H#100=选兵(陸.海.空)
9 K) M4 _4 h r- c% J0 O' IIF[#100 EQ 陸 ] GO1* Q5 S2 D. i! H, @$ d, m
IF[#100 EQ 海 ] GO2& C) C& Y5 \% D3 V0 r
GO3(鼻用說.當然是空軍)
: b* j) W$ X! S% H6 b(或不用GOTO3省略它.可以的話在GOTO2後面直接就做,屬於空軍加工部分)
4 o) T9 u+ n" T! V因為EQ是很確定.鐵定的東西..使用者可安排快捷性(調整順序); }; @; h, k, l' m: K* k* x
8 W! b5 u, @7 H5 x- h% L& y如果怕#100有錯誤.如輸入天兵..可在#100輸入後...與GOTO之間進行防呆/ o/ X4 ~9 w: r' [- \4 [
也可不防呆,加工會鑽錯,誰叫使用者故意去測試玩弄MACRO,沒防呆功能用戶最好空跑一下,確定好再做
8 m+ ]- i: w1 b
9 i- e, K/ [& [6 b還有一種防呆寫法:0 K7 |/ d/ Z) S1 b" h7 m$ s4 y
#100=選兵(陸.海.空)( u. `7 g2 m7 q" a( J1 N
IF[#100 EQ 陸 ] GO1
% J0 g, u6 z9 d# mIF[#100 EQ 海 ] GO2
M+ u- v) W% E" F$ `IF[#100 EQ 空 ] GO3
1 [3 _% L, z0 V- s" w1 ^8 W7 N+ n8 S#3000=1.(如果流到這裡表示#100投入有誤)
+ j9 u! o9 q! h/ v/ a/ aN1.... _- D( R9 S6 n8 P' m5 Q% g: K
4 v, T& q9 Y& A3 XN2....
1 S% B: G- X& {" w% o2 A3 _0 {5 g% c C+ G& O& S1 d. E8 A1 V
N3....
: r- @5 a9 U9 H) u/ R7 \
: H4 C! H9 Y! P2 g6 M) a2 |0 WM999 }5 z% {1 p- z& y" w" Y+ O
0 g$ a: t8 K- A$ L8 M l% h
1 O, |+ O5 l8 X8 E7 ?形式2:$ E! E% _% l3 J& \; x7 w7 H
#100=領國家的薪水(人民,老師,軍警,政官(民意.立法))" F+ M1 u; z9 p) F
IF[#100 EQ 0万] GO1! U* I5 }6 v1 P3 i, p
IF[#100 GT 5万] GO26 [0 B' \" u0 L& q9 w: X; y# N
IF[#100 LT 5万] GO3
) @/ X K/ ^# a+ q* Y. lGO4(可省略條件式[#100 EQ5万])老師
: Z4 h: V; K0 d) o k..........
$ v( d+ h, `$ n0 kN1 人民+ h; \' x, [8 @+ Y
% f7 R$ N! i! @) s" j r+ |8 U3 u0 C6 N9 dN2 政官) d4 s1 J: _9 w/ H
* x3 [* c& Z8 \; \N3 軍警- }' B/ \$ H- q) t
9 u$ J! ]" g; `6 FN4 老師
& a* R5 W! U9 Y% h2 w4 d+ B2 o! d7 X
$ X' N' A8 |& U7 B, g! OM99; k( _4 }6 \* b
7 e, m* Y( \) k7 e! K ?
※注意1與3可能會有衝突,有前後順序性的
$ b/ y( B0 ?, N6 f: f C! N形式2是以新台币計價的
; P- a" f, x# l. v( D
: `) K6 z( P, ?9 l1 R; H% r* j
" t4 Q( [' f8 \1 A' L: i" e: A另外一個IF-THEN的例子:9 Z7 s% w6 Q5 K. X! g$ J
假設#100=已用四則運算,算好的結果+ a+ P4 K l, p
1 A: o: ?0 I* h2 v" m5 W
IF[#100 EQ 2.5万] TH#30=10.
; a" |% [* _! x( t5 u5 g) l& v- `IF[#100 EQ 0万] TH#30=10.
- }9 ^' c* U, z4 z! y h- P* NIF[#100 GT 2.5万] TH#30=20.
v) c$ T2 Y) c+ Z- N( m9 KIF[#100 LT 2.5万] TH#30=15.
! w. q" ?: f3 eN1 G1 X#30 Y#25.......開始加工" c" Z# ^8 r! u. p! x( s
$ A+ u; S% F4 c A9 x9 u
上述2與4性質雷同可能會有衝突,不能這樣寫,可改寫成,A法:
# v, I1 f2 x* F( e! o6 t
' U( ~! b) R: i) p& iIF[#100 EQ 2.5] TH#30=10.8 S$ ]* Q; b+ w8 i9 x( W
IF[#100 EQ 0.] TH#30=10.. s4 w+ r5 C r/ I9 v8 Q
IF[#100 EQ 0.]GO1或IF[#30 EQ 10.]GO1(讀到2先跳開)1 y8 M4 w6 _. G5 W/ F% C" Q F. M
IF[#100 GT 2.5] TH#30=20.
8 D: I5 r: h, V6 O& sIF[#100 LT 2.5] TH#30=15.& q6 x) u/ M& _4 G+ w* {
N1 G1 X#30 Y#25.......開始加工& Y2 `* ^, c4 N7 ]( a# ~/ v/ P
0 B0 j! F2 [+ [% K. v, P% k/ w3 o8 K
或改寫成,B法:使用或閘(OR)- L7 @6 m, b$ J; |, T) u
#30=10.& \# f- x: e1 h! \% V
IF[[#100 EQ 0.]OR[#100 EQ 2.5]]GO1(判斷好就先跳開)
# s+ ^5 ~. p6 H. { `IF[#100 GT 2.5] TH#30=20.
- k, ~; f. h' ]( U V' c- H- R% \IF[#100 LT 2.5] TH#30=15.
) K; c6 l: r7 g8 ~2 a+ i1 vN1 G1 X#30 Y#25.......開始加工
8 K! V! S% N& h, s$ z0 j2 t9 M# H# M8 M9 j# Q+ a6 G4 W
還有一種不使用TH的寫成,如下:: ]4 U" o* |2 ?9 J8 W" K
30=10.
" L, C j$ ^7 [8 T" Z: g$ z- z" IIF[[#100 EQ 0.]OR[#100 EQ 2.5]]GO1* F: H; Z4 [6 s
#30=20.
! l7 J$ B6 y9 n% N3 J( W$ UIF[#100 GT 2.5] G019 B5 Z! h8 _9 V8 O0 b' x
#30=15.) E g3 N3 {2 C4 U$ ]5 Y! C
IF[#100 LT 2.5] GO1<---此條件式可以省略
5 y& w( H# \2 T5 @7 @N1 G1 X#30 Y#25.......開始加工0 Q* S: X: ]! q
; p* \% C0 ]1 l* z" ^. ]/ t& }#30會一直有數值去覆蓋它5 V- t) f+ Q% u) q
0 R7 }( G7 A% S5 C
& \5 k* e$ i8 v( o3 k6 f
形式3:理髮: k8 Z2 x d! C$ U5 ]* R# j
#100=2兵(1.)、一兵(1.5)、上兵(2.)、下士(2.5)、中士(3.0)7 V# |' T5 I5 A. G- a; I. t
IF[ #100 LE 3. ] GOTO理15分頭
0 H t0 W" F' ?0 U1 OIF[ #100 LE2.5] GOTO理12分頭
$ F" t J9 J7 Y, vIF[ #100 LE 2. ] GOTO理9分頭
( B8 P# [& a n" p; fIF[ #100 LE1.5] GOTO理6分頭' M+ a. j+ ~! M. y, T! P- |# e
IF[ #100 LE 1. ] GOTO理豬頭
. s1 V: U0 M9 Q* E7 t! d7 u7 a+ }3 `5 f% Z& n2 P
※順序可顛倒,這不會有衝突,如阿兵哥人多可考慮置於首,考慮快捷性1 \- G, N0 t. U2 p: i
4 o# w9 K% A( B6 B& B2 _1 f' j
另外的一種B式
7 ?3 K8 O! r& _% OIF[ #100 GE 3. ] GO, f. G5 f5 h8 O3 u5 p+ J
IF[ #100 GE 2.5] GO
" H7 z i V. I" D. ^2 Z( iIF[ #100 GE 2. ] GO
, b! u2 t8 W; N' gIF[ #100 GE 1.5] GO" O8 U2 t7 q5 ^3 M
IF[ #100 GE 1. ] GO
# x/ D5 u }8 o3 A+ u5 t. a順序不可顛倒喔!不然少將會理成狗頭( d4 B/ F7 x. f. K) H
此例不能安排、佈置快捷性: O$ T1 h& i2 V0 \9 P
9 ?0 c7 z. C) r3 L5 }& U$ [
' @8 S7 H6 ]3 Z- h7 g8 ^2 fA式:有點像把數值逼到牆角比,自不量力可直接看出1 {1 o6 z* | F: e# @/ ], E% _) P
B式:像在自由空間比,如果順序調換. Y& P) d1 B5 n. u
有錢人也可以去小吃店吃牛肉麵
4 @$ h7 I2 \* {高學歷也可撿回收物當職業
/ d3 Q4 i+ ~$ A0 v9 P( E
; T( F) P+ g j$ ]7 R, c再說一下B:順序不能上下倒立,只能轉身如7 G6 U" L0 w% O$ f; w! v
IF[ 3. LE #100 ] GO2 j. k3 Z7 w8 j" I! J
...# q9 P9 P0 ]% H. B1 B/ H
...
+ F- p4 i$ }8 Z4 P2 p- j& RIF[ 1. LE #100 ] GO ]- Y, x$ o( E- q, U0 |
: @( w) D! A6 ^2 R; _6 JA.B兩者有一種共通的特性,領多少錢就做多少事
. F3 t2 ^: l# f! e- p3 f: x" U如果順序顛倒,可能是使用者需要截長補短(抓長補短)的性質,有互補的作用) x- m6 M5 h* p' Q- i
* S. o# I! b3 {) Q) L7 l
. M* H$ R; z7 `( R以上為個人的經驗 |
|