|
|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区
您需要 登录 才可以下载或查看,没有账号?立即注册
×
本帖最后由 羅蓋仙 于 2013-7-24 22:53 编辑
/ u' \ E. O6 |3 A, T8 {- I
( Q1 \( ]; Z; _- V使用者如果需要使用一連串的IF-GOTO,我想說明一些事項與特性
* j4 T7 q( h8 z3 m& P1 W& n% G' Q0 H
形式1:* ]# Q9 e7 W7 c
#100=选兵(陸.海.空)( G- @# c" a% L2 I1 `
IF[#100 EQ 陸 ] GO1
0 R: n( j! [& b5 e. i% x+ e' DIF[#100 EQ 海 ] GO2
* J7 I0 B% T6 y; tGO3(鼻用說.當然是空軍)/ O9 `" m; l/ m7 W! }/ S
(或不用GOTO3省略它.可以的話在GOTO2後面直接就做,屬於空軍加工部分), Z a5 W2 z4 [) X! X) T
因為EQ是很確定.鐵定的東西..使用者可安排快捷性(調整順序)3 S _: R' K( S2 H" A
3 ?0 T: v$ O. s* ^/ w6 n. j) p如果怕#100有錯誤.如輸入天兵..可在#100輸入後...與GOTO之間進行防呆
8 Q; z$ ~& k/ Z2 \也可不防呆,加工會鑽錯,誰叫使用者故意去測試玩弄MACRO,沒防呆功能用戶最好空跑一下,確定好再做+ W# H Z2 G0 ~5 _( s0 u v# X* J
" x. _- ?2 v5 M8 O0 G還有一種防呆寫法:7 S3 s( o' S- W* a- p: B2 T, [( h1 y
#100=選兵(陸.海.空)
3 t, b3 T; W; M: Q& G0 ^- Q. ZIF[#100 EQ 陸 ] GO1/ ~+ a, {2 D s4 `
IF[#100 EQ 海 ] GO2& z+ u- K: q4 }- R' c7 g1 S
IF[#100 EQ 空 ] GO3' B3 M7 z3 p+ O( J6 s
#3000=1.(如果流到這裡表示#100投入有誤)
0 N; j) J5 A/ w' E2 f0 rN1..../ x8 y" n' c* Y3 P d
1 t5 b% z3 N7 {' e
N2....
+ O% {$ U2 h8 d" L! V9 I' e
+ w% |5 J. k$ o/ y5 QN3..../ k* Q& Q3 Y6 U2 w6 p
2 K6 T4 M6 Y& ~: b5 j" J
M99
! q5 W: _/ w0 l$ E* `
# x" V) L+ a3 a D4 B- }3 |+ E, X# u% m0 d' V. S* W
形式2:
_+ s) {0 H8 c. t( q0 K0 ~#100=領國家的薪水(人民,老師,軍警,政官(民意.立法))0 y4 T2 w, _" J4 B3 ]- g. {
IF[#100 EQ 0万] GO1" e; p( @ q: }* h0 }/ g
IF[#100 GT 5万] GO2/ b. {' S7 K: }" ]+ N! I' ~+ K
IF[#100 LT 5万] GO3- w4 q1 i! p4 [3 i8 B& N8 k# ?+ ?
GO4(可省略條件式[#100 EQ5万])老師6 W3 j l0 |2 w4 ]( T$ Q
..........
; D4 e8 N( [ NN1 人民
: { I; I {9 P8 v. g! W& r$ t" E" E t$ M& y5 j) h) g
N2 政官
3 s q/ ]0 s/ N1 K& ~1 A" B" C; [5 F( {
N3 軍警
, D! U6 K0 E3 V$ h! k1 \& g7 P6 X
' N' |4 r) h' F/ c' D6 r/ `N4 老師
4 \+ _5 g i( |
5 O8 b7 r+ b+ AM99% p+ E. J' r1 B# A9 L4 z- a. o
! J) h7 F& H8 T; ]( ?# }/ E※注意1與3可能會有衝突,有前後順序性的
, |& C) t% {1 c, c4 @- V1 a形式2是以新台币計價的
% x1 {8 T2 [, C* s y. r+ ]5 f, ]" k
; u( R" X3 T& F8 s8 L0 [9 J0 n" s, O. v0 S" E5 T& P: Z* k* {
另外一個IF-THEN的例子:
8 I; N% |1 j2 X; G假設#100=已用四則運算,算好的結果
# q' _: `. Z1 h
& j& H! u4 c7 n. E+ I+ O# FIF[#100 EQ 2.5万] TH#30=10.
2 H' l7 f# N9 X# fIF[#100 EQ 0万] TH#30=10.
7 o/ D1 l" n' x- g6 W& I- ~IF[#100 GT 2.5万] TH#30=20.
) x W$ c6 W' F1 NIF[#100 LT 2.5万] TH#30=15.7 H/ M. j$ `1 |& t2 n1 L6 P
N1 G1 X#30 Y#25.......開始加工
* h: K/ ~/ G6 Y' @- `: s
" p* \. @8 { R9 h) f; R上述2與4性質雷同可能會有衝突,不能這樣寫,可改寫成,A法:- @6 v [8 e* M* T, b
9 t4 ~; P5 r$ s5 O% z' _- m
IF[#100 EQ 2.5] TH#30=10.
3 R# w1 Q+ c& N4 K! cIF[#100 EQ 0.] TH#30=10.
, L4 a. o4 O4 N1 H* JIF[#100 EQ 0.]GO1或IF[#30 EQ 10.]GO1(讀到2先跳開)
8 o n. `4 h4 g' YIF[#100 GT 2.5] TH#30=20.* l( H6 y M" d* N: m# S4 |3 L4 h% m
IF[#100 LT 2.5] TH#30=15.
' I* J$ @! U4 hN1 G1 X#30 Y#25.......開始加工/ `3 e. M/ k. m7 b8 E o1 c6 m
2 i6 `1 y0 g1 ]% e& T/ f& m1 D/ ~
或改寫成,B法:使用或閘(OR); n. j) y# [# c! x7 y- o
#30=10.
, k2 {% r+ n4 [+ }0 mIF[[#100 EQ 0.]OR[#100 EQ 2.5]]GO1(判斷好就先跳開)
# A: \! m# E$ ?) t" O$ w! ~0 iIF[#100 GT 2.5] TH#30=20.
8 ]6 O% W+ q. @* M7 IIF[#100 LT 2.5] TH#30=15.. Y6 K, A/ M0 b4 B+ o s2 F$ ?
N1 G1 X#30 Y#25.......開始加工7 w' p- }4 i6 k+ ]3 ^' N; L
) O+ \/ A+ C V/ F; w6 I
還有一種不使用TH的寫成,如下:
" V9 d; `& I; d. H$ s30=10.$ ?/ f+ D8 ]. q* I% H& P
IF[[#100 EQ 0.]OR[#100 EQ 2.5]]GO1, B: |7 Z2 c2 `' f8 v% i
#30=20.* ~. r2 w& k4 E; _# E5 I+ I# }
IF[#100 GT 2.5] G01( G M8 v& j+ r' q# G5 H0 n* ^
#30=15.8 `% ~% l9 s8 x5 ?! ]2 \. v
IF[#100 LT 2.5] GO1<---此條件式可以省略
/ A3 [0 t' A( X$ F% z. t+ u/ tN1 G1 X#30 Y#25.......開始加工
0 [6 \ X1 H' w5 W6 u U* l5 I+ W1 q/ a( o5 Q
#30會一直有數值去覆蓋它
* L! b% |% y4 O d3 g$ |. |% @
* d0 \: c. L- U6 t
. z* ~2 i2 g) L7 v1 }2 v" C9 H形式3:理髮8 n: J' L) p/ d
#100=2兵(1.)、一兵(1.5)、上兵(2.)、下士(2.5)、中士(3.0)+ n0 ?2 B" u2 A' R3 G7 `: P4 Y
IF[ #100 LE 3. ] GOTO理15分頭- c: m' i4 S3 g, \' l: e
IF[ #100 LE2.5] GOTO理12分頭
0 B& m# `* @+ X, c& R! WIF[ #100 LE 2. ] GOTO理9分頭
% b! ^+ |7 \+ o( s' j% j; ?IF[ #100 LE1.5] GOTO理6分頭3 ~, \' E& z4 }, J: L( j
IF[ #100 LE 1. ] GOTO理豬頭( o2 j, C5 W, _! e' ]; p) Y
( S% x& s% P' }$ |
※順序可顛倒,這不會有衝突,如阿兵哥人多可考慮置於首,考慮快捷性
3 W* U' k* f# H0 \7 h W9 O2 n% z: i( i; I b& K
另外的一種B式! l, L; B1 w6 i3 V
IF[ #100 GE 3. ] GO
( @% S! D. ?$ L6 ]# WIF[ #100 GE 2.5] GO
k# c9 U5 P' [8 a/ LIF[ #100 GE 2. ] GO
6 y: a0 \3 C) X9 k' B: ?IF[ #100 GE 1.5] GO/ p/ F* Q3 E# S( @5 w
IF[ #100 GE 1. ] GO
4 i* }/ e0 x7 Z, X- [順序不可顛倒喔!不然少將會理成狗頭
1 f; t! N6 o8 p# N: t w此例不能安排、佈置快捷性
9 ~: r' O# S1 ~- G w9 t
* H" m+ [! z& w
. V3 f1 ~3 i- y" w/ s2 ?A式:有點像把數值逼到牆角比,自不量力可直接看出$ M6 N, j$ A' K- n, L6 _
B式:像在自由空間比,如果順序調換
4 a, U+ o+ L3 T0 V7 b; V% A7 X& t有錢人也可以去小吃店吃牛肉麵8 t* y, m; A; z) P7 g7 `1 r" N
高學歷也可撿回收物當職業7 K" W! g4 ~1 W$ Z" c
& h. K0 {7 l; K. e再說一下B:順序不能上下倒立,只能轉身如, ^" T4 \ h# \" U
IF[ 3. LE #100 ] GO
; B3 ]) m9 W0 ]6 N D( a...
" [0 T- J; I3 a+ ^4 ?9 W$ Y* @6 U! R9 ^...
9 |$ N3 o- R8 f* J! ]6 A IIF[ 1. LE #100 ] GO
% K6 ]2 X2 o( \' e
2 b% E! `8 O" r) V' Y% [- ]( KA.B兩者有一種共通的特性,領多少錢就做多少事- v3 O7 [6 e4 I, ` ]
如果順序顛倒,可能是使用者需要截長補短(抓長補短)的性質,有互補的作用5 ~3 a! I# z# r. D S
) ~! G) L6 _) Q0 g4 o f
' w _& h- g! L( S' U以上為個人的經驗 |
|