|
|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区
您需要 登录 才可以下载或查看,没有账号?立即注册
×
本帖最后由 羅蓋仙 于 2013-7-24 22:53 编辑 , q. |+ ?0 J( ^( R; b9 q; S( a4 z! K
* x) {0 v) ~, q A, p
使用者如果需要使用一連串的IF-GOTO,我想說明一些事項與特性' b: Y+ F9 [) J4 f! Q
: r/ k8 H' ^0 I+ d
形式1:
9 I1 c! ~- Z* P* ]) E- l#100=选兵(陸.海.空)
$ I& L4 G* A; ? a' CIF[#100 EQ 陸 ] GO1
6 @7 S+ b, }; F0 I* r# v; IIF[#100 EQ 海 ] GO2+ t" E3 ~% S; e7 m( C, a6 \
GO3(鼻用說.當然是空軍)9 X8 h3 ?4 t2 z4 J
(或不用GOTO3省略它.可以的話在GOTO2後面直接就做,屬於空軍加工部分)5 s5 M/ R* z5 C& Q$ h3 i8 b
因為EQ是很確定.鐵定的東西..使用者可安排快捷性(調整順序)
; { Z: \, Q3 d+ d# ]
- r- C4 Y4 w i9 e如果怕#100有錯誤.如輸入天兵..可在#100輸入後...與GOTO之間進行防呆
& y5 O. u/ t8 D) n9 q( N& |也可不防呆,加工會鑽錯,誰叫使用者故意去測試玩弄MACRO,沒防呆功能用戶最好空跑一下,確定好再做
8 E" s0 d9 ?, }7 b" H! R2 ]( q! O( c6 q2 I
還有一種防呆寫法:3 R a$ C( q+ c7 }
#100=選兵(陸.海.空)5 i/ d* ^' ?* Z
IF[#100 EQ 陸 ] GO1- H, D' h6 M/ |. }, N+ n7 l
IF[#100 EQ 海 ] GO20 K+ N( T+ u& K: H7 h! F3 [8 w
IF[#100 EQ 空 ] GO3
' @6 k, d; ?* P) e#3000=1.(如果流到這裡表示#100投入有誤)
' \1 X; i+ V; q0 w! C0 v# IN1....
6 ?" A" D8 m2 L2 [& B, w% K p2 ?) f3 B7 X9 ?
N2....9 ]5 M, r* F6 T# G" W
0 B9 [2 d5 @, }& ^7 VN3....' N5 @9 j# U5 w+ U
+ H6 w2 v3 @" T) Y" J3 Y0 Z4 ]
M99
1 X) |2 J; G T+ w
, ]. L: V0 p0 L1 L" T; o5 X
/ F' E0 {% e1 G! c形式2:8 ~/ B6 A5 I! a0 X2 o9 E
#100=領國家的薪水(人民,老師,軍警,政官(民意.立法))3 p0 T7 H a( N* Z% B2 e
IF[#100 EQ 0万] GO1* h" V6 S, y; ?
IF[#100 GT 5万] GO2
1 i: J1 M6 a: G: |/ X# z6 xIF[#100 LT 5万] GO3
5 r- f7 p n8 M9 L$ DGO4(可省略條件式[#100 EQ5万])老師 q; D$ Q2 b: u% E1 Z# H F
..........
' Y$ h/ _ V: w4 ?1 jN1 人民
" P2 S6 o' D! L6 m7 }2 e0 x, C5 @4 v& }, K) F
N2 政官' U% Z# h8 z' y/ I' T$ S! E
$ b. _( f9 D T/ \% x
N3 軍警! `8 n9 B G' Z
! w( ]7 I) l' x$ g% |* gN4 老師
0 L2 e- ]1 \" {/ P& x: {; ~2 y
" o6 o& t' W) X8 [; V' YM99. T3 Q$ j* [1 _3 N# e: v
( u* p1 b% g4 W6 d+ B0 q※注意1與3可能會有衝突,有前後順序性的. E2 ~! S F* X$ U, ?+ ?
形式2是以新台币計價的 c$ p/ B$ e, @& K
6 G9 C3 [( T6 a; B8 D, H$ r
% |( Q/ T# Y% ]: d, ], _3 s# F另外一個IF-THEN的例子:
/ B/ w7 w6 `& D& I* p3 {! ~' P7 X假設#100=已用四則運算,算好的結果! u _4 a0 W- y8 {8 H1 n
7 S; I% G/ J1 n- Q, o3 hIF[#100 EQ 2.5万] TH#30=10.9 H7 I: S8 p- w; V
IF[#100 EQ 0万] TH#30=10.
' Q5 L4 B0 v, u$ L/ zIF[#100 GT 2.5万] TH#30=20.
- N: C. _; e0 H$ x& LIF[#100 LT 2.5万] TH#30=15.
- X7 j3 F! ]5 H3 XN1 G1 X#30 Y#25.......開始加工% q% ]$ {8 Q0 ^- V
: X9 _7 z0 z0 z( A% f4 t, E. z
上述2與4性質雷同可能會有衝突,不能這樣寫,可改寫成,A法:( ~# f" z& O4 C& k2 }
1 b, O# f& @- i+ xIF[#100 EQ 2.5] TH#30=10.
" e0 \2 l" X/ ]# L' ]2 V* ?. yIF[#100 EQ 0.] TH#30=10.% G0 V# ^2 w3 k* h4 k+ x
IF[#100 EQ 0.]GO1或IF[#30 EQ 10.]GO1(讀到2先跳開)
& X) E# J2 e# v1 ^2 P1 v5 X- LIF[#100 GT 2.5] TH#30=20.
+ x' {2 ` [ z6 i- Q$ R* vIF[#100 LT 2.5] TH#30=15.' l4 u, T4 ?( ]# {* f- U: f/ z
N1 G1 X#30 Y#25.......開始加工
& s% Y" B8 O5 P' w; y
% `& w+ ^) v/ T1 r. E* T* R或改寫成,B法:使用或閘(OR). ?+ c4 t; K) u& r
#30=10.7 \3 Q2 M7 R" g; }9 ]. H; o
IF[[#100 EQ 0.]OR[#100 EQ 2.5]]GO1(判斷好就先跳開)
) K# [1 `, j. uIF[#100 GT 2.5] TH#30=20.& q2 U: U6 ^) k$ x Q
IF[#100 LT 2.5] TH#30=15.( h. W, F8 D9 r# l, A& ~
N1 G1 X#30 Y#25.......開始加工' c# A2 p* Q, d0 d7 r# V
+ y* {% S* F% @1 D還有一種不使用TH的寫成,如下:
; F& p. E- Y- M3 o30=10.( u: r* c6 w8 @; j- g* r
IF[[#100 EQ 0.]OR[#100 EQ 2.5]]GO1
4 Q6 ^, M% ]+ f5 A#30=20.: w% i, L7 E% K8 P0 N
IF[#100 GT 2.5] G01% \* S$ T) P3 p6 s _
#30=15.
8 P. m x5 p5 ?# |) q% NIF[#100 LT 2.5] GO1<---此條件式可以省略
. A9 e+ I" L" d u* n; zN1 G1 X#30 Y#25.......開始加工
. P6 a; F, n: z6 G! p
7 l( G: a: ?2 j" v; _4 {8 ^#30會一直有數值去覆蓋它
: ^, s2 K. }1 q7 M; b+ h" q& T3 A) o& {3 f
: n% }- r1 \. m9 D: z形式3:理髮3 w0 p) n- I/ ?6 q0 ]
#100=2兵(1.)、一兵(1.5)、上兵(2.)、下士(2.5)、中士(3.0)8 \, F2 C- l- h: d, b: y Y* ~
IF[ #100 LE 3. ] GOTO理15分頭2 C, }' }& v# T6 @1 d
IF[ #100 LE2.5] GOTO理12分頭2 s7 L) y p, |2 w* J
IF[ #100 LE 2. ] GOTO理9分頭; s9 C7 ]1 { G1 q4 e& l7 E
IF[ #100 LE1.5] GOTO理6分頭+ g0 O' x) h( A( i2 K+ \+ {
IF[ #100 LE 1. ] GOTO理豬頭
: a6 I1 q p, K! S% N/ o' y9 T1 ~) p0 w- j
※順序可顛倒,這不會有衝突,如阿兵哥人多可考慮置於首,考慮快捷性
, R) [. b6 ~4 g* t: [8 K" H9 `% s l, j! `1 E. s
另外的一種B式) D# T9 H& m6 ]4 K2 A" t2 n
IF[ #100 GE 3. ] GO F) V! z/ Z- A( \
IF[ #100 GE 2.5] GO
5 F7 w3 `, `: `IF[ #100 GE 2. ] GO; F' W. q s3 h1 u, [" W; o8 R$ @ {
IF[ #100 GE 1.5] GO
4 S |3 x1 M& vIF[ #100 GE 1. ] GO
0 |. A5 e4 A/ D; ~$ v4 C/ t2 W順序不可顛倒喔!不然少將會理成狗頭
1 _, x; A1 b P7 [此例不能安排、佈置快捷性
7 E% e9 M: x: F P% P. T9 L1 J, o3 U* E; f
$ ~, C( r+ d, `3 R* ~
A式:有點像把數值逼到牆角比,自不量力可直接看出
- t& x) X& g2 C6 z6 IB式:像在自由空間比,如果順序調換
: J2 s8 m1 b3 v- U1 h/ p. a U; \有錢人也可以去小吃店吃牛肉麵8 _5 m/ |! X6 ~) g6 ?$ ]
高學歷也可撿回收物當職業
, D+ d$ p" x( j9 i4 ~/ h! X2 E' N$ D% T; i' Q* r4 V1 h- q
再說一下B:順序不能上下倒立,只能轉身如: Z2 L d! E: X4 K! S# w
IF[ 3. LE #100 ] GO5 a0 v9 V4 F; w% C" f& ^
...
5 |6 g3 U: _% ?) k# n' _..." X9 Y, `+ W$ ~5 L& V: O( c! ?7 \3 L
IF[ 1. LE #100 ] GO
; K. Z! v/ S4 h j, A1 j5 c! k% u% \' ?% P" g1 i
A.B兩者有一種共通的特性,領多少錢就做多少事) V2 l# v% `4 O8 {0 ~/ X* G. U' ^% H
如果順序顛倒,可能是使用者需要截長補短(抓長補短)的性質,有互補的作用* R- ]! A+ d; r1 ` y3 K
" I7 ^0 i4 k. `# Z j
* \+ m" s- J6 r7 c, i
以上為個人的經驗 |
|