|
|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区
您需要 登录 才可以下载或查看,没有账号?立即注册
×
本帖最后由 羅蓋仙 于 2013-7-24 22:53 编辑 % r/ P. @ O Y( u0 V! Z
3 C* T, |5 ^1 V1 M1 F0 z使用者如果需要使用一連串的IF-GOTO,我想說明一些事項與特性0 |# \" i8 `9 S) f' S' G8 F
3 C# p% U, R8 K5 r$ S5 G
形式1:
+ k! m" r+ ~" Y p* L- S#100=选兵(陸.海.空)
" k1 S1 P w Y M, _3 s: ^IF[#100 EQ 陸 ] GO1
! O; O% m6 K0 P. v6 w7 S8 NIF[#100 EQ 海 ] GO2
! n) M7 u, Q0 u; F% [. n: r+ tGO3(鼻用說.當然是空軍)
( {% [0 R( m j5 S) r, ?9 P) u, e, e(或不用GOTO3省略它.可以的話在GOTO2後面直接就做,屬於空軍加工部分)* b' P! i5 ^( x* n
因為EQ是很確定.鐵定的東西..使用者可安排快捷性(調整順序)
! g: G3 E/ I* X7 A Y+ x3 Y. [# T. H9 y5 P8 d# Z3 o
如果怕#100有錯誤.如輸入天兵..可在#100輸入後...與GOTO之間進行防呆
& r1 `: e$ I3 c6 ?8 c4 G也可不防呆,加工會鑽錯,誰叫使用者故意去測試玩弄MACRO,沒防呆功能用戶最好空跑一下,確定好再做
/ g, d2 ]3 f0 |5 R/ X
% ~; {, M0 ^& `+ N2 ?: v# g6 B3 G還有一種防呆寫法:
/ D+ W, }. K, O! k) Q) N2 L+ i#100=選兵(陸.海.空)2 Z2 R _2 y8 e6 |2 Q
IF[#100 EQ 陸 ] GO1
- k( {" V. J5 A) A$ t& _6 @' fIF[#100 EQ 海 ] GO2
5 B! C0 B: w9 P( p, m: M& |, [IF[#100 EQ 空 ] GO33 _; c( Z1 M$ r* F$ F3 N
#3000=1.(如果流到這裡表示#100投入有誤)) V+ H: X5 r0 T7 @
N1..... ~+ T! A( y4 Y" e8 h) w
( d6 {( t9 I; ^! w6 v: I
N2.... z2 Y1 w, A$ B+ ~
* I7 c3 j9 S8 V% {! eN3....# e9 w; ]) q5 S! [
- @8 y9 N; P' U( rM990 K/ X% \8 l3 F; L
, N; b( j( Q! x8 J
+ t( m6 p5 P, \6 I7 @形式2:
( v4 D/ B% G2 F# x* Z: V#100=領國家的薪水(人民,老師,軍警,政官(民意.立法))
/ j1 K8 |8 y& p7 n: MIF[#100 EQ 0万] GO1. u; `% U3 [/ [- c
IF[#100 GT 5万] GO2( F* G- \: \. a# l; `7 n) `1 F
IF[#100 LT 5万] GO3
1 i0 c! r& Q& uGO4(可省略條件式[#100 EQ5万])老師
. E. k. y0 y6 Z; v) {........... q7 y: B: F6 p8 O6 b4 T- \
N1 人民, J2 R9 W/ K5 k4 Q1 `7 S* K+ M6 T
/ `4 w- _8 m8 V+ y9 K0 G2 D7 ~N2 政官+ ~# K4 ~' X9 m( b/ g
/ r9 T! G$ x: y% e, J+ u
N3 軍警
0 H- O; s1 R5 k* q* a/ j+ O- J2 {; `; X$ ^% Z( }
N4 老師9 L1 I: P0 x5 R9 K0 _* w3 e
5 I9 [6 d2 H4 ^6 g
M996 ^5 s& N! p: e$ u3 ^
0 [5 ^+ v2 P* Z3 `
※注意1與3可能會有衝突,有前後順序性的
1 x( O9 G; F' g' R1 b# C3 p/ p- m形式2是以新台币計價的6 p. ^8 c' _3 X2 W: F( ]
$ p X) S. a+ q) [6 n9 y' z- V) e/ r1 P9 J( P
另外一個IF-THEN的例子:- [% I" P: O1 G8 r- a' m6 B
假設#100=已用四則運算,算好的結果7 m2 c% ^7 x# f; a" p& H9 e
. L t; n# g2 B- w4 V j l
IF[#100 EQ 2.5万] TH#30=10., E# F/ C# h- |0 E: Q; ?3 x: r
IF[#100 EQ 0万] TH#30=10., \' ~0 g- g5 r; O, j4 `. b0 ~
IF[#100 GT 2.5万] TH#30=20.
' s6 ` S4 a" {7 M6 ~+ u" iIF[#100 LT 2.5万] TH#30=15.$ F; J$ N1 L- _
N1 G1 X#30 Y#25.......開始加工
1 K! q% T% H" |0 f
% P: ], Z: z% T6 t# x上述2與4性質雷同可能會有衝突,不能這樣寫,可改寫成,A法:6 ^: s; c4 m5 O) A
* n8 l0 P8 c5 o0 V- OIF[#100 EQ 2.5] TH#30=10.
8 P6 r! O; x C0 mIF[#100 EQ 0.] TH#30=10.3 H( i7 O, u# x5 }9 r
IF[#100 EQ 0.]GO1或IF[#30 EQ 10.]GO1(讀到2先跳開)
5 o$ t0 Z: s( U3 ], TIF[#100 GT 2.5] TH#30=20.- t5 @" E" _) Y. U1 B9 ~, ^0 r3 p* ~! V
IF[#100 LT 2.5] TH#30=15.
" a3 {! F4 m2 `" i: e6 X3 XN1 G1 X#30 Y#25.......開始加工+ L% ~; l0 J9 S6 b" D I* ^# |/ Y2 R
* V; E/ t6 v* }8 T7 W或改寫成,B法:使用或閘(OR)5 u% w- B0 K$ g6 E" V. h
#30=10.9 B) G" `( {5 j
IF[[#100 EQ 0.]OR[#100 EQ 2.5]]GO1(判斷好就先跳開)9 w. ^$ ], f- p5 `& p( u% Z7 N
IF[#100 GT 2.5] TH#30=20.
2 b/ [) M; N: z5 I2 @IF[#100 LT 2.5] TH#30=15.
; `0 E) X1 F" c; F/ F5 f" S+ {N1 G1 X#30 Y#25.......開始加工7 }# j2 T. Q6 \: P5 d4 s
3 Q1 R; m" A; r4 C! z* f0 H6 @2 J
還有一種不使用TH的寫成,如下:
8 j; l: `' N; A* j30=10.( X% _7 x0 q Y
IF[[#100 EQ 0.]OR[#100 EQ 2.5]]GO1- S) f8 ]1 {5 M: C
#30=20.) F# G# k4 a# o {' y: l# d
IF[#100 GT 2.5] G01
" W K6 ]% ?" N' j( l% w#30=15.9 q4 w% h% _7 u$ b, {! z
IF[#100 LT 2.5] GO1<---此條件式可以省略* Q4 g9 \0 Y: Y0 N9 N' P
N1 G1 X#30 Y#25.......開始加工
4 A, Z3 J: R2 a* O/ H( P/ i. A8 j# T% C% m: M
#30會一直有數值去覆蓋它
4 s8 h" L3 [" U ]4 q9 F: n: H) n
) i% y! {( h0 H
形式3:理髮$ |" Z; q4 Y3 n; f
#100=2兵(1.)、一兵(1.5)、上兵(2.)、下士(2.5)、中士(3.0)9 f; r6 F) M, ]0 t, P. x. O
IF[ #100 LE 3. ] GOTO理15分頭8 ?; e7 d; s0 b0 m
IF[ #100 LE2.5] GOTO理12分頭/ o; H& `4 N7 S) e/ K
IF[ #100 LE 2. ] GOTO理9分頭
, P2 V- n- r6 t* hIF[ #100 LE1.5] GOTO理6分頭
1 ]) V0 N" v; Z' {4 {7 dIF[ #100 LE 1. ] GOTO理豬頭$ c2 I# \& ~( f5 G* v/ r8 l8 `0 G
N; {2 }, F2 ~, k
※順序可顛倒,這不會有衝突,如阿兵哥人多可考慮置於首,考慮快捷性
_* o/ ] f. m X) _1 X2 |- z3 A. v' B# I5 E# d$ R5 e: R, {& \
另外的一種B式
, |( q0 w5 u; G W" L s+ O+ yIF[ #100 GE 3. ] GO$ \) \! a6 w, U# S% F* j h
IF[ #100 GE 2.5] GO* J6 Z; H2 f: H- \# H7 F, j/ Y
IF[ #100 GE 2. ] GO7 W8 u, ^! {8 B# y+ j% X
IF[ #100 GE 1.5] GO
+ }& ~$ f# P' F6 S/ bIF[ #100 GE 1. ] GO0 m+ [* Y; a( L/ j! Q, s
順序不可顛倒喔!不然少將會理成狗頭
* x$ ]) b5 `8 O! W此例不能安排、佈置快捷性1 L# M- s' }# D! _
$ P0 v8 j$ z$ c; q
C7 z/ r. ~9 n R
A式:有點像把數值逼到牆角比,自不量力可直接看出% e$ N% n6 u j
B式:像在自由空間比,如果順序調換' G( M& ~8 ?- L0 f/ \% V
有錢人也可以去小吃店吃牛肉麵# W2 S d" a. v
高學歷也可撿回收物當職業6 o7 k) S: X; w) D9 i: ^
! E+ ^7 J( v7 k. M# p$ p
再說一下B:順序不能上下倒立,只能轉身如
3 {* B3 v' ?$ H {4 g3 s& IIF[ 3. LE #100 ] GO
$ g+ v: ~) }7 j6 s6 ^) a...
' }' z& N+ |6 Q. @...
. P* r9 w7 d# VIF[ 1. LE #100 ] GO+ o3 O9 `+ R3 y* I
! E- f4 `; \9 q0 D: |3 b7 u/ C
A.B兩者有一種共通的特性,領多少錢就做多少事" g4 i) |4 X# u, _7 q! n- s
如果順序顛倒,可能是使用者需要截長補短(抓長補短)的性質,有互補的作用/ Q7 X4 O5 q: O) z6 Z( Y
) _0 B7 j0 |. g# b
' U; A6 D2 G l3 h1 D4 J7 f n( f以上為個人的經驗 |
|