|
|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区
您需要 登录 才可以下载或查看,没有账号?立即注册
×
本帖最后由 羅蓋仙 于 2013-7-24 22:53 编辑 3 }; w# b4 N6 x8 z) F& F
8 u' j8 Z& t- K2 |
使用者如果需要使用一連串的IF-GOTO,我想說明一些事項與特性' q/ [3 v+ v" _# ^! k+ P) ^
, V; Q8 |3 ?" L) u) v
形式1:
. r+ k% v5 k& u+ ~- ]) q6 j9 G#100=选兵(陸.海.空)8 C2 B4 ~, I) t U4 V: c. J' u
IF[#100 EQ 陸 ] GO1
9 B" G3 @7 w! x# }2 Q A* F( YIF[#100 EQ 海 ] GO2
3 {( U" B- Q$ e+ d2 M5 cGO3(鼻用說.當然是空軍)
' K2 F5 } P! e/ t. ^, J(或不用GOTO3省略它.可以的話在GOTO2後面直接就做,屬於空軍加工部分)$ _9 z$ Z2 H& X `! s+ a* r
因為EQ是很確定.鐵定的東西..使用者可安排快捷性(調整順序)' `3 m$ P7 W; T0 @9 z6 ^5 Z1 c
( y" W# \* v/ ]# h. d/ Q: B( u7 e% W3 A
如果怕#100有錯誤.如輸入天兵..可在#100輸入後...與GOTO之間進行防呆
/ R* S& x4 \8 W3 _6 R2 @也可不防呆,加工會鑽錯,誰叫使用者故意去測試玩弄MACRO,沒防呆功能用戶最好空跑一下,確定好再做
( s. \ J* X/ B& M5 ~# f* m
# B* s/ t( g3 O還有一種防呆寫法:
& q) ~- b+ [; Q' e5 C#100=選兵(陸.海.空)+ u p% [0 j$ A6 Z
IF[#100 EQ 陸 ] GO11 |9 {5 {4 L1 F8 n
IF[#100 EQ 海 ] GO2
8 _; n* M( | u* K9 E+ G NIF[#100 EQ 空 ] GO3
( u% l, z) R( B4 i2 v$ `#3000=1.(如果流到這裡表示#100投入有誤)
+ Z3 J8 u) s/ MN1....
: l! J* E, X! }5 w$ Q- _
+ b: H2 o$ K7 U/ v' {% i; a cN2....
+ J* }) B( y$ H0 c* _/ X- |9 E$ D2 i; _/ j9 h
N3....
1 _% d3 J) J) g8 s& v+ V
4 R0 y# a$ g% [! B2 }M99
! A: [# X \+ e6 D" I& f1 V. H# m8 _4 w
H' I; ]. D$ e6 ]* f1 e$ |( z形式2:
3 ~4 S* r8 h6 v#100=領國家的薪水(人民,老師,軍警,政官(民意.立法))
) ~' v. k4 s ]- bIF[#100 EQ 0万] GO14 [4 K- G4 l: b8 ]
IF[#100 GT 5万] GO2
o/ K% i, X$ Y1 mIF[#100 LT 5万] GO36 r$ D* V' x: E, g
GO4(可省略條件式[#100 EQ5万])老師
) R# n, g' E+ O" [4 f1 h0 U. L.........., z A f# C) Y1 }
N1 人民( n. m' G9 k. z* e' M! G0 c
$ J3 R, C" E) Z) k! X3 S$ qN2 政官9 N; n" y) e3 e! _. s: q
( i. P' H* C' D1 o( e1 U: aN3 軍警
% P4 E! h# v4 s# E: ~5 s, d
/ _7 M8 r. x, S$ q) Z7 d, |+ dN4 老師
$ D: J9 a% X2 n& c0 z, J% {& B+ b5 d8 e3 x% d
M99
' _: z. @/ ]+ T# G2 g$ `" k1 R. R6 s3 ?3 o( @$ N7 _- u8 M5 o( j0 U8 `
※注意1與3可能會有衝突,有前後順序性的1 _+ V; S/ D+ |, D; f; N" q# ~! f
形式2是以新台币計價的% V5 P( l0 _1 y1 d* [
3 E+ ~1 |7 a r) F
! ^; D' c( e' i4 x! ]9 A6 _; E% f0 n. N
另外一個IF-THEN的例子:- L4 d5 N5 Z3 N& Z
假設#100=已用四則運算,算好的結果
7 ^5 A, i3 S7 O- x m8 }1 j0 O7 F4 ^, [( _' V
IF[#100 EQ 2.5万] TH#30=10.- q2 V9 C: I0 @
IF[#100 EQ 0万] TH#30=10.9 g4 S- T8 S+ _
IF[#100 GT 2.5万] TH#30=20.
6 O( \6 {. G, x6 e) X! t6 [IF[#100 LT 2.5万] TH#30=15.
0 j! |% q3 N& ON1 G1 X#30 Y#25.......開始加工
4 B' f! h) I$ N* [) E" R9 ]! v! s: B" v% \( _
上述2與4性質雷同可能會有衝突,不能這樣寫,可改寫成,A法:! Y9 D7 @% y2 V7 _6 ?
2 B! H7 ?; e' y' K1 RIF[#100 EQ 2.5] TH#30=10., V+ _- P B# {
IF[#100 EQ 0.] TH#30=10.
4 s- n1 @+ l7 g: ^1 e b' d' s5 lIF[#100 EQ 0.]GO1或IF[#30 EQ 10.]GO1(讀到2先跳開)2 D% w. h# v! N0 ]6 ?2 p+ L8 b1 N
IF[#100 GT 2.5] TH#30=20.0 a6 t; T% {. a6 d
IF[#100 LT 2.5] TH#30=15.
6 @0 n* {$ i; X3 p% u1 k; r cN1 G1 X#30 Y#25.......開始加工
1 w e a: v, N" [% Y$ D0 }6 A/ r V, G' w e( P
或改寫成,B法:使用或閘(OR)0 A; ?% p7 v6 O
#30=10.4 }( @5 b$ E" p" D
IF[[#100 EQ 0.]OR[#100 EQ 2.5]]GO1(判斷好就先跳開)" D+ N: P: x% P6 v+ z' P6 T
IF[#100 GT 2.5] TH#30=20.4 n3 T: G: ~5 ~8 R5 F
IF[#100 LT 2.5] TH#30=15.+ u H \9 H( A: Z' i% ]
N1 G1 X#30 Y#25.......開始加工9 r" u" b" L3 b
0 e7 U8 u, n4 v7 l5 b4 J還有一種不使用TH的寫成,如下:
0 Q7 b1 R* w- y8 o0 k30=10.6 F1 b8 D' y" N& n V* |+ v
IF[[#100 EQ 0.]OR[#100 EQ 2.5]]GO1
E+ k. {% R, N1 p$ [! `/ B#30=20.
% ~9 C3 O4 z9 S9 F& v" gIF[#100 GT 2.5] G01! w* }0 S) N8 O! L5 {9 n
#30=15.$ Y6 T1 C9 u+ {$ c4 a* w" s# {
IF[#100 LT 2.5] GO1<---此條件式可以省略: g) I# z( n7 T# u3 w6 T
N1 G1 X#30 Y#25.......開始加工0 C# v* q- u% j4 O! ^& N6 Z
1 N2 W& }1 t. [8 v
#30會一直有數值去覆蓋它
+ \( R" Z# l: g# d7 B; v1 R- o( v
$ P: C9 o* H7 V% r形式3:理髮
2 k+ {4 J. P( ~( m#100=2兵(1.)、一兵(1.5)、上兵(2.)、下士(2.5)、中士(3.0)
% x5 U$ J: Z3 U) S! IIF[ #100 LE 3. ] GOTO理15分頭' x+ r/ {0 |# H9 e
IF[ #100 LE2.5] GOTO理12分頭% z4 R+ N7 q9 F, N6 [0 u* ^
IF[ #100 LE 2. ] GOTO理9分頭- @) K- I2 r$ y2 ]+ m
IF[ #100 LE1.5] GOTO理6分頭- G" i; V0 }# i5 S6 A& e7 |
IF[ #100 LE 1. ] GOTO理豬頭6 Q0 W0 G' }" i2 i. |
~9 z' B! q4 l# c# [- V$ \8 {※順序可顛倒,這不會有衝突,如阿兵哥人多可考慮置於首,考慮快捷性% L" } W3 ~! z$ o& s7 e% b; k: E1 }: p
- w$ e4 v' z- \% b3 x0 j7 I另外的一種B式" D$ N- R' O6 z# B. [4 o
IF[ #100 GE 3. ] GO; |: A% f$ x2 `- K
IF[ #100 GE 2.5] GO2 M% W1 g/ z# \. \; V
IF[ #100 GE 2. ] GO: I2 D+ q9 p8 G* u6 G& A
IF[ #100 GE 1.5] GO
- |, m' @! n8 F" ^IF[ #100 GE 1. ] GO$ T; e! K& H8 c% }
順序不可顛倒喔!不然少將會理成狗頭
7 F, ]# @9 a5 J) f9 w$ Q/ Z! d此例不能安排、佈置快捷性
: {/ O7 `) Q( c+ ^* Q" S
9 B. I7 {0 h; P
/ w2 p" T* x! A3 b# uA式:有點像把數值逼到牆角比,自不量力可直接看出 b/ H# t, j f: p
B式:像在自由空間比,如果順序調換8 Y/ F! U/ ]) Z, p" V
有錢人也可以去小吃店吃牛肉麵3 d6 \; O+ H. h
高學歷也可撿回收物當職業- T- Z$ P* N2 C/ n' D0 }& p
& u) r' @9 l, T! ?5 t0 v$ x
再說一下B:順序不能上下倒立,只能轉身如
# U* M. p3 f0 qIF[ 3. LE #100 ] GO3 g4 ?8 n- x! b
...9 ^5 B0 e" O# |% R: U3 ^
..., d0 _9 K* v" ~6 u/ W
IF[ 1. LE #100 ] GO
~+ l% A- _" W. N- r; t( j- ]
A.B兩者有一種共通的特性,領多少錢就做多少事
9 C+ i0 c0 l4 I N4 h如果順序顛倒,可能是使用者需要截長補短(抓長補短)的性質,有互補的作用
- x/ q+ o, q- @! M
) x+ @- M* y9 {& ^
- e. U6 y, b! P) f! D N以上為個人的經驗 |
|