|
馬上注冊,結交更多好友,享用更多功能,讓你輕松玩轉社區
您需要 登錄 才可以下載或查看,沒有賬號?立即注冊
×
本帖最后由 羅蓋仙 于 2013-7-24 22:53 編輯
; e: k1 L k3 d# o. a4 Q% s" G. P' u2 C; M0 b; r
使用者如果需要使用一連串的IF-GOTO,我想說明一些事項與特性7 `( S5 L4 @3 O2 N+ O
V* ~6 {' g) w/ ^: [0 S
形式1:
1 w( x+ y. a: m7 p8 g5 e# I% b* ~#100=選兵(陸.海.空)$ E3 D/ X( J# U2 t* M
IF[#100 EQ 陸 ] GO15 H; m6 Q# h, I# N! F
IF[#100 EQ 海 ] GO2/ d) C8 ^) q( s. P5 ^$ f9 o
GO3(鼻用說.當然是空軍)
% w- C' g0 a8 K! Y* t8 h& G4 J(或不用GOTO3省略它.可以的話在GOTO2後面直接就做,屬於空軍加工部分)
: a3 w4 A9 m' V4 E6 s因為EQ是很確定.鐵定的東西..使用者可安排快捷性(調整順序)' q5 n1 \ |* y5 s: B
( \: X0 @1 B9 P' K如果怕#100有錯誤.如輸入天兵..可在#100輸入後...與GOTO之間進行防呆
! r0 r+ O; O) L' F也可不防呆,加工會鑽錯,誰叫使用者故意去測試玩弄MACRO,沒防呆功能用戶最好空跑一下,確定好再做' b3 _+ s" z1 r5 D( \
* G) b8 t# V s1 T
還有一種防呆寫法: c7 ~0 l5 M4 O! K) Y( R
#100=選兵(陸.海.空): c; F# u# z! c( m- L( G! J. {3 w- P% ^
IF[#100 EQ 陸 ] GO1
: O. ?) L5 m3 f' a3 ]' V2 c+ \4 T5 UIF[#100 EQ 海 ] GO2) U9 h$ [' v. X
IF[#100 EQ 空 ] GO3
& \8 t4 g1 y& X: K6 l#3000=1.(如果流到這裡表示#100投入有誤)
# N B6 N1 F7 C2 C- ~$ w" h, AN1....6 k/ J) v( |( s6 O- u
/ c( s9 I, g' G7 Z$ pN2....$ E7 T; M- ^4 O$ q- e+ ?
# O |( X( t! C0 C) DN3...." c/ A1 s7 C' v# q/ J
7 j2 Z. G* A* X
M99* y9 G* F, }) E$ g3 ]
) ]5 X) c d9 P6 g' }
9 I T5 |: K6 x形式2:
' @1 [# b! Z# G- W# h5 m#100=領國家的薪水(人民,老師,軍警,政官(民意.立法))0 Z0 }* N+ }& q" m
IF[#100 EQ 0萬] GO1
0 v/ u j. _2 |3 h* R5 UIF[#100 GT 5萬] GO2+ I! v' c4 U( U6 u
IF[#100 LT 5萬] GO3$ g2 Z+ v- I3 Z, T) K+ `. M
GO4(可省略條件式[#100 EQ5萬])老師
3 I8 m/ Q, {3 Q6 S7 f2 q, A..........
) H) y5 r$ Z7 D- B0 G. MN1 人民$ o6 h8 M- U) g& @2 y& t
8 W9 e3 ]7 R8 Q) K/ t' E& I
N2 政官
) q. c0 v) E' _' x* R. `6 v- O5 a8 Q; F1 e* I* v1 y
N3 軍警
7 z e6 Q: I- U$ x" r) L8 Z8 M
' u! ~; R9 B+ y% D! zN4 老師
/ s- r) C4 _( Z( J8 ` x$ ?6 C4 W) \1 k/ h- H# V- j/ u# h
M993 l! K4 s3 \/ W) c" w+ W8 E
7 t6 T5 s. Q: i7 a* H3 V' |9 ~- z
※注意1與3可能會有衝突,有前後順序性的+ |( V R- P) J
形式2是以新臺幣計價的
6 q K k/ W; n1 G- p4 f# ]/ z# Y( ]9 n1 t/ A- v- J
2 |" \9 S- Q: {/ p" Y另外一個IF-THEN的例子:. F* x4 B& I- e1 W$ J
假設#100=已用四則運算,算好的結果
) f2 A+ V$ Z$ F; ^) |
9 }. e0 \5 e# {7 i1 YIF[#100 EQ 2.5萬] TH#30=10.
, \- P$ P j) T) D. J/ ~7 E# y4 {* SIF[#100 EQ 0萬] TH#30=10.3 T0 v' Q+ z7 ^ }
IF[#100 GT 2.5萬] TH#30=20.; C# `) K& L/ U( E# m/ G
IF[#100 LT 2.5萬] TH#30=15.$ s! I! B2 \, W1 d4 M
N1 G1 X#30 Y#25.......開始加工
1 f2 q* }4 d+ T" Y; A
; Z9 q8 `! s, e% C7 Q* G- R上述2與4性質雷同可能會有衝突,不能這樣寫,可改寫成,A法:4 P! D) j" [9 J& c% o) Z$ M- Y) ?
! U+ D( v& {% w3 XIF[#100 EQ 2.5] TH#30=10.
% F, f$ O9 c4 k" O- K- MIF[#100 EQ 0.] TH#30=10.( I% q3 A' }4 U% f1 J
IF[#100 EQ 0.]GO1或IF[#30 EQ 10.]GO1(讀到2先跳開)( h. Y! m5 l+ n2 b& a0 H# ]
IF[#100 GT 2.5] TH#30=20.
% p" a0 ~" t2 OIF[#100 LT 2.5] TH#30=15.9 x( x) ]& f: L) f
N1 G1 X#30 Y#25.......開始加工
7 n, P% N0 q$ f' @ d1 O/ L
% o5 a. [4 L& U: D8 [或改寫成,B法:使用或閘(OR)
# a$ x, q4 |0 s k$ F! S4 e. t4 Q#30=10.
7 o! M+ q, w3 t; u% M( T/ zIF[[#100 EQ 0.]OR[#100 EQ 2.5]]GO1(判斷好就先跳開)
: o, w( Y3 Y |IF[#100 GT 2.5] TH#30=20.- j( `/ [8 ^5 N0 s5 a2 e/ {0 _
IF[#100 LT 2.5] TH#30=15.$ K0 Y! b8 r8 t2 o
N1 G1 X#30 Y#25.......開始加工3 o5 @9 U8 g4 s4 A1 q0 E
* Z$ z/ X5 j' q4 d0 u* e' O還有一種不使用TH的寫成,如下:- \# |6 n1 Y2 X' d% s/ F) `
30=10.
1 F+ t/ `: g) x: }IF[[#100 EQ 0.]OR[#100 EQ 2.5]]GO1$ H* @- N. U& b. Y9 H" _
#30=20.
; [4 w }7 L, G& d: G( tIF[#100 GT 2.5] G01, A+ k7 B/ w6 P$ v2 b
#30=15.1 c- k5 q! I! V- @7 U$ _0 W
IF[#100 LT 2.5] GO1<---此條件式可以省略
' K* [8 O/ n. a) t: U' H- E6 [& EN1 G1 X#30 Y#25.......開始加工
- B- v0 l. L3 o9 @" N6 d+ {& \+ j' k, X: u+ H3 N$ C
#30會一直有數值去覆蓋它% q* d4 V; a6 ~' q
: E8 R" M+ P5 k2 U) W8 {( r0 M
2 \2 n. y8 ]0 y- ?; J0 g
形式3:理髮 M+ D0 C1 m- w
#100=2兵(1.)、一兵(1.5)、上兵(2.)、下士(2.5)、中士(3.0)
6 a9 ^7 g+ G# H# y- @7 L, ]IF[ #100 LE 3. ] GOTO理15分頭
: T6 V8 l/ w6 qIF[ #100 LE2.5] GOTO理12分頭% I; K- @. P) v) z8 K; l
IF[ #100 LE 2. ] GOTO理9分頭
" D( Z* C( N6 ~IF[ #100 LE1.5] GOTO理6分頭9 m' H7 c2 J( z9 a" K
IF[ #100 LE 1. ] GOTO理豬頭4 R" k8 k/ ]- |; @
% j$ K, O$ W& C
※順序可顛倒,這不會有衝突,如阿兵哥人多可考慮置於首,考慮快捷性
; U& I* a* ?2 ^8 @3 e) R, I. G. _: y# ?* ]4 {
另外的一種B式
' U3 B# q$ M# l7 BIF[ #100 GE 3. ] GO
. n9 t6 z/ s7 f. zIF[ #100 GE 2.5] GO
0 @2 b9 n, ~- L6 CIF[ #100 GE 2. ] GO
- e$ R2 ]- n" {. `" YIF[ #100 GE 1.5] GO
# q0 E* E' n$ u, J6 TIF[ #100 GE 1. ] GO: G+ J. |6 s, G, d! d& J
順序不可顛倒喔!不然少將會理成狗頭) y: n% P" @' B8 ^
此例不能安排、佈置快捷性' ]4 d o+ t3 ~2 w- }3 ^2 Z# a. w
3 @6 Q) L. o) i0 s u/ M7 ?/ Z
; b7 y) N, z! _! bA式:有點像把數值逼到牆角比,自不量力可直接看出) G0 D9 T$ N+ e: T9 P% s5 q$ ]
B式:像在自由空間比,如果順序調換& U' N$ C' p5 E2 P6 A) V+ s6 q
有錢人也可以去小吃店吃牛肉麵
. W& d4 X/ A5 r" ~) |$ i高學歷也可撿回收物當職業
& `5 h( s4 ` B0 W3 D% ~. h/ c/ R
再說一下B:順序不能上下倒立,只能轉身如: l: [# Y6 X( R2 w- y( m0 H' @9 J! n
IF[ 3. LE #100 ] GO" w3 V8 y( v$ a+ T) T
...
& @- D2 W& s7 v...
$ D: y+ u1 d$ {% i& sIF[ 1. LE #100 ] GO
8 C4 d$ [0 z* W4 d0 N. `' E+ P! y. U& J; \" g! E
A.B兩者有一種共通的特性,領多少錢就做多少事
$ h% n O. S" u5 a如果順序顛倒,可能是使用者需要截長補短(抓長補短)的性質,有互補的作用
" }* I( m# W& d7 A- d4 t" Q
8 I3 Y! \ @# E- T9 }6 A1 l u- k" u# d' A
以上為個人的經驗 |
|