|
|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区
您需要 登录 才可以下载或查看,没有账号?立即注册
×
本帖最后由 羅蓋仙 于 2013-7-24 22:53 编辑 7 r2 T$ w7 Y `6 M9 K7 D
p' [) t) v* O3 }使用者如果需要使用一連串的IF-GOTO,我想說明一些事項與特性
6 d S5 s* y# k! C, \
$ c' s+ c0 z2 L3 ]* W! T形式1:5 Y% z3 k( j' D* F) h$ b) M3 T4 p3 | y3 `
#100=选兵(陸.海.空)* C: P; C' T' ~8 Z9 L$ n: Q, ?
IF[#100 EQ 陸 ] GO1
+ t3 j7 O* O# G* }* a( }: e* c* @IF[#100 EQ 海 ] GO2! G, O1 i5 |, V: ]' o
GO3(鼻用說.當然是空軍): V9 S$ S6 i2 \
(或不用GOTO3省略它.可以的話在GOTO2後面直接就做,屬於空軍加工部分)* E! I$ l4 g) q& `
因為EQ是很確定.鐵定的東西..使用者可安排快捷性(調整順序)2 t ]1 {1 D4 p
1 k/ W( `5 b/ A: g
如果怕#100有錯誤.如輸入天兵..可在#100輸入後...與GOTO之間進行防呆
( H. B3 e& l* K1 l也可不防呆,加工會鑽錯,誰叫使用者故意去測試玩弄MACRO,沒防呆功能用戶最好空跑一下,確定好再做
; d$ A* `; _% l+ V% ^. J0 W7 q7 y/ S% `
還有一種防呆寫法:) m5 x% t) D- F# q) X: }7 I
#100=選兵(陸.海.空)
7 N; ?& \! C! N5 K, A" gIF[#100 EQ 陸 ] GO1% s- k4 `% p+ [1 M% t" p- K; {6 K
IF[#100 EQ 海 ] GO2
( m7 B& v* h. N" yIF[#100 EQ 空 ] GO3
* V. M- J, `4 f6 a$ }( Y#3000=1.(如果流到這裡表示#100投入有誤)% k, r- D9 p; b+ d' Q
N1....9 B! N7 r3 v7 z) ~
! A6 O4 m B% G% L# ]/ IN2..... k9 e' ~! F8 W' F
" L6 [/ `; m; Z" X( z# {: K5 k
N3....3 k2 B. v7 o Y1 M- H
& g' o+ A! B; W# f+ K2 U
M99
* g# w4 W- `; g. h* J% T7 B0 }# t8 v( i" c
8 e2 Z" U# V& g1 ~( X1 x
形式2:
8 z0 p- g" o' }" u* i( a#100=領國家的薪水(人民,老師,軍警,政官(民意.立法))9 v% ]( S, V' n$ n
IF[#100 EQ 0万] GO1
: Z7 C& t n2 T2 WIF[#100 GT 5万] GO2
, O; U9 c- n2 ^IF[#100 LT 5万] GO3
0 P4 e6 r+ h6 @2 |, s5 jGO4(可省略條件式[#100 EQ5万])老師
# }& I8 z x/ Q1 h. Y1 D..........
0 N0 _$ w8 S, TN1 人民
+ x' N- j3 w/ l( }9 T- U. }2 m
) I8 p# H; O; k0 HN2 政官
- W3 D I% G. _; s l u5 c ^9 S7 M% n! W% f5 E
N3 軍警
, T k" F) a1 J& M% P. d% \+ c1 A9 V; K* ?( \" L* T
N4 老師
s$ e) L1 y% A' [# o( d$ v/ a/ t9 m7 d4 E* }
M99
0 X( A8 e9 J$ R' Q2 e' w; z+ o" M: b! F9 q! @5 {! C/ | k
※注意1與3可能會有衝突,有前後順序性的
) V2 i' ^' |/ r形式2是以新台币計價的
& y, j# W3 z- |9 o& c* Z
6 K/ y# C8 X8 ]' @6 a! {
) M( t p9 K b J9 j& {, [) x另外一個IF-THEN的例子:7 M3 p9 g( {; w, ]: t& C1 E! d
假設#100=已用四則運算,算好的結果" U( }! S7 z$ ?
, Y7 j# T. R5 ^/ ?0 E- {# xIF[#100 EQ 2.5万] TH#30=10.
1 t; a& B- M( ?) @, ]+ d+ c, W) R* U3 mIF[#100 EQ 0万] TH#30=10.
: C6 A- R4 k" v( L# a0 D9 V. G* `IF[#100 GT 2.5万] TH#30=20.# K, d6 Y, \ ?+ C. F; v
IF[#100 LT 2.5万] TH#30=15.+ i: B8 @% k0 G" c/ `8 K
N1 G1 X#30 Y#25.......開始加工) @: j" y) w& J* j" ^! B, p+ Z* {
4 m; |; ]- M! \2 ]上述2與4性質雷同可能會有衝突,不能這樣寫,可改寫成,A法:
9 u+ {# y4 b) [! W/ i6 h
( ~0 n- f; v3 N; A$ v) D6 wIF[#100 EQ 2.5] TH#30=10.
9 T: L( D1 J# }3 E( IIF[#100 EQ 0.] TH#30=10.; X6 t% d1 k0 x% n- R" _
IF[#100 EQ 0.]GO1或IF[#30 EQ 10.]GO1(讀到2先跳開)
# J+ m9 L ^3 G {IF[#100 GT 2.5] TH#30=20.
$ S5 \; V, s' G7 M* Q+ M9 s- @IF[#100 LT 2.5] TH#30=15.
$ D) |8 }+ I2 I2 ]2 s& N* tN1 G1 X#30 Y#25.......開始加工5 M4 G1 n" P8 w" ~* N# F, B H
( L( h; w C' I. \4 {
或改寫成,B法:使用或閘(OR)
" g" [8 F+ y x5 T$ J3 Y#30=10.8 ]' L' M, Y( R! x6 R( v0 w- e" `
IF[[#100 EQ 0.]OR[#100 EQ 2.5]]GO1(判斷好就先跳開)! O3 w! q7 E& k% N$ c4 |
IF[#100 GT 2.5] TH#30=20.' x% q; C4 K1 Y% |- l- X
IF[#100 LT 2.5] TH#30=15.# y, p: u$ o9 D$ c
N1 G1 X#30 Y#25.......開始加工
' {1 L+ `8 |/ C6 s3 H3 ^3 ^; C& \: C
+ e5 R( i4 r+ o9 F9 X: k$ _8 T還有一種不使用TH的寫成,如下:; d9 h9 t- s; T: K* ?7 S6 \- J
30=10.
5 f* z4 x a3 wIF[[#100 EQ 0.]OR[#100 EQ 2.5]]GO1& i( \9 k- Y3 ~
#30=20.- j0 D M8 a. X0 X- X8 H
IF[#100 GT 2.5] G016 s" j' H2 E3 F+ W# Y; C
#30=15.& p' W, O' Y" @, M9 A
IF[#100 LT 2.5] GO1<---此條件式可以省略
; c% ]5 |8 j3 f2 I. I p' @" [: pN1 G1 X#30 Y#25.......開始加工
3 ~; g# K" @( i# S7 n6 B* O
! E5 Z/ S& C( F; |5 J$ Q#30會一直有數值去覆蓋它
/ B6 i+ Z2 A; p/ J3 F+ B( J! b m3 \; |: D2 c+ L% b. I! E2 G
6 w9 n, z+ }0 I" T# z9 v形式3:理髮6 j: u7 A3 }* N9 p0 t$ Y
#100=2兵(1.)、一兵(1.5)、上兵(2.)、下士(2.5)、中士(3.0)! H+ q6 w& O9 b, u- X4 A& Q
IF[ #100 LE 3. ] GOTO理15分頭: H- ~/ c. ^9 X6 D
IF[ #100 LE2.5] GOTO理12分頭& I, _0 e. B% ]5 K2 g7 a( y3 Y
IF[ #100 LE 2. ] GOTO理9分頭
" v$ d) X! `! H& yIF[ #100 LE1.5] GOTO理6分頭; h2 s- L" L! A& ]: f
IF[ #100 LE 1. ] GOTO理豬頭 c8 U- ? R3 R) P3 w# P
+ L! b A3 i! m3 v
※順序可顛倒,這不會有衝突,如阿兵哥人多可考慮置於首,考慮快捷性 n, d4 m+ V) ]9 b# S2 {
$ Z$ ?% C% k# z, K0 Y C0 o
另外的一種B式( v4 [' l/ c0 h$ X9 _
IF[ #100 GE 3. ] GO
/ J Q8 t1 |# tIF[ #100 GE 2.5] GO
/ k, A5 T/ W5 `/ K6 G/ qIF[ #100 GE 2. ] GO% K( s+ C, Q* l* w6 D( ~+ z
IF[ #100 GE 1.5] GO; P1 Y8 u* L) @
IF[ #100 GE 1. ] GO3 h9 ~3 l/ p4 k* j
順序不可顛倒喔!不然少將會理成狗頭
3 x; g! T" I6 ^) X. O此例不能安排、佈置快捷性( v6 A; L( y* q) j* k1 D
1 Z+ p1 M/ y3 x6 t% @: o! S! R7 z
0 _. m& m/ b: i, NA式:有點像把數值逼到牆角比,自不量力可直接看出
1 x; e. a* _ f9 t8 Z8 @B式:像在自由空間比,如果順序調換0 |& s4 _6 }. T5 S( d0 s
有錢人也可以去小吃店吃牛肉麵* r- V1 M3 p# G" Y0 H& q" v; m' a" _
高學歷也可撿回收物當職業
7 ^) f) J; O- L5 {" ]6 I0 n
4 W# M: ~. j$ \8 |( C再說一下B:順序不能上下倒立,只能轉身如
0 W0 v; f5 {1 c5 q$ eIF[ 3. LE #100 ] GO
- D2 }( Y% @0 ~% M& E# N" ~...
/ o8 s, {4 F- k+ R1 Y+ z/ E. t% C...- [/ ]/ f! `9 y8 ?. L5 h, }
IF[ 1. LE #100 ] GO0 z( b3 @+ x+ N0 {0 c
6 C0 K b! T( a" ~
A.B兩者有一種共通的特性,領多少錢就做多少事; P: z1 R) e# C8 `+ {- O
如果順序顛倒,可能是使用者需要截長補短(抓長補短)的性質,有互補的作用
# D8 F/ g% b/ ?+ h( Q4 k k/ ]/ q, g7 t; H& p0 |/ w/ U
/ ~: {( A! c1 L( a7 q, ?以上為個人的經驗 |
|