找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 10117|回复: 35

[分享] 使用一連串IF-GOTO的經驗

 火.. [复制链接]

28

主题

67

回帖

146

积分

注册会员

积分
146
发表于 2013-7-24 22:40:27 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区

您需要 登录 才可以下载或查看,没有账号?立即注册

×
本帖最后由 羅蓋仙 于 2013-7-24 22:53 编辑
1 q3 B4 M) D/ u( ~- M, T& C& D  c8 s$ `1 X& o5 u% ?! P! h, b
使用者如果需要使用一連串的IF-GOTO,我想說明一些事項與特性
# f' B: }$ G2 \4 V- a4 Z3 ]0 N( ]
形式1:2 L4 S2 _! J# s" J
#100=选兵(陸.海.空)
5 C3 }9 ?8 N: n# D. F) g& a3 LIF[#100 EQ 陸 ] GO1" q& r7 D8 X% ?7 ?
IF[#100 EQ 海 ] GO2
8 L) U# L# f8 _1 Z" d0 KGO3(鼻用說.當然是空軍)
: s" N- u) \9 y% j1 Y$ V* ^# D(或不用GOTO3省略它.可以的話在GOTO2後面直接就做,屬於空軍加工部分)
$ b" \3 X+ ^1 B! M- B因為EQ是很確定.鐵定的東西..使用者可安排快捷性(調整順序)
1 `2 G9 p7 u; _/ \# Q" X* X0 I2 n$ \4 X$ U) j/ P
如果怕#100有錯誤.如輸入天兵..可在#100輸入後...與GOTO之間進行防呆
+ P. e9 G% x0 F: r, B% U- l) A也可不防呆,加工會鑽錯,誰叫使用者故意去測試玩弄MACRO,沒防呆功能用戶最好空跑一下,確定好再做

" K" \- P2 a8 V4 S
/ @# z% e$ M& t( p) S還有一種防呆寫法:
2 O1 k* r& @# i  e% X9 K#100=選兵(陸.海.空)
( r+ X; \5 n0 Q. @: V, x  T% _. |IF[#100 EQ 陸 ] GO1: B" f, b% R; }% u1 Q) t( D2 _
IF[#100 EQ 海 ] GO2
7 o: A8 B. Q# r9 L) `, v: nIF[#100 EQ 空 ] GO34 h7 b( F4 p6 H
#3000=1.(如果流到這裡表示#100投入有誤)
' m0 z5 n! ~- V: F9 a/ S' Q6 h  LN1....
2 i9 r# E; k+ Z" Z, H: |6 _1 G. m6 @% _* S1 _5 ~4 @# A  g
N2....
, G/ P+ L' [; o; ?; X! J
+ {  K0 Q+ u, a0 I1 NN3....
. C7 d2 ~5 P; s# x# w9 S: l( I$ m1 Q# H! x, L  _$ t
M99

% i' F9 X9 X  X
. n, Q5 i/ L8 o4 u$ Y# h  L% e; L9 X5 v( ^! F1 t
形式2:* q4 y- g5 n2 e4 R' Z+ H+ K
#100=領國家的薪水(人民,老師,軍警,政官(民意.立法)); O8 x  P5 V7 @" k$ M' p
IF[#100 EQ 0万] GO10 W2 _  @. ?$ p/ Y* I2 R; |1 r
IF[#100 GT 5万] GO2! ?8 o1 G+ G& k& A+ f' g
IF[#100 LT 5万] GO3( Z8 W$ S! K, z5 I8 l
GO4(可省略條件式[#100 EQ5万])老師9 p4 V* A  s( W( w5 \
..........( h* v0 X3 ^8 B( h& L
N1 人民
- e9 E4 q. t' F7 D
# J' ?2 H2 L" x3 B. i  M# ?N2 政官0 E' ^1 \) `+ u6 a0 X
+ m+ r- f) Z3 v! U5 W( e
N3 軍警6 H  z) U8 K7 c" _0 C) `0 }, W, l
  U( H# g: e2 \; X
N4 老師
5 S; g; \% h5 Y  {6 q
% @$ B' N* i! v* E8 G0 I  ?% _/ i2 `M99- w' U6 ]/ S, B. X

6 W" B) H7 o* |- A# R※注意1與3可能會有衝突,有前後順序性的
0 {  k3 H( w9 e+ `9 M+ c
形式2是以新台币計價的
! n* F6 B) R" a9 e* H2 v4 w4 k( t' U- G& D8 T
; Y# o% F/ I3 M* m# I5 u% K
另外一個IF-THEN的例子:
( B  E5 [, d, E8 @假設#100=已用四則運算,算好的結果
& w% ^) E7 J+ D$ F: S% P
# H2 y" b1 M4 v- r' HIF[#100 EQ 2.5万] TH#30=10.
8 x3 {9 H. j' G3 uIF[#100 EQ 0万] TH#30=10.8 w$ t  z3 E5 ~- ?2 i0 ^
IF[#100 GT 2.5万] TH#30=20.
; Q9 C+ m6 A( F2 c9 WIF[#100 LT 2.5万] TH#30=15.8 R0 Y! l# x8 _; ?6 N. e
N1 G1 X#30 Y#25.......開始加工

4 ?7 T: f# i, `7 @. L* l; O: @$ ~
上述2與4性質雷同可能會有衝突,不能這樣寫,可改寫成,A法:6 p1 n" j. f, B

9 W1 o: K8 L0 U, P: L  Y9 T1 YIF[#100 EQ 2.5] TH#30=10.- _$ u; \) t3 v6 M) i
IF[#100 EQ 0.] TH#30=10.
/ |% F; R  D3 \1 J7 p, ^) P  z8 MIF[#100 EQ 0.]GO1或IF[#30 EQ 10.]GO1(讀到2先跳開)
+ q  f  l2 N( m, Q4 p0 o0 z( e: XIF[#100 GT 2.5] TH#30=20.
6 a( A+ `& ?, bIF[#100 LT 2.5] TH#30=15.
0 F1 m: i; f9 _! `2 M+ UN1 G1 X#30 Y#25.......開始加工
- o% b9 f( y; d( C& c! a2 r

# |( M" ^& j+ Z$ A/ X( f! T5 `! I或改寫成,B法:使用或閘(OR)3 g- K0 z0 R  s- ]6 |
#30=10.7 D; W# j; n$ {! l$ Q& Q! |% o- m
IF[[#100 EQ 0.]OR[#100 EQ 2.5]]GO1(判斷好就先跳開)
/ Y0 ?% D' `* s. r. @IF[#100 GT 2.5] TH#30=20.% g# o# V0 g6 ]/ v$ j
IF[#100 LT 2.5] TH#30=15.8 m9 t5 n* q8 l5 o
N1 G1 X#30 Y#25.......開始加工9 Q5 E8 I5 g* b# q* s

$ u' }& @0 w( P9 r/ ~+ t& }還有一種不使用TH的寫成,如下:
9 e& F1 ~2 J; S8 M0 U. B# n2 |- d30=10.
) U4 N1 u6 d. K9 D* iIF[[#100 EQ 0.]OR[#100 EQ 2.5]]GO1
* |5 }) U" N" Z* f% }9 s; O0 X#30=20.. l$ Z  l# R! @0 w! h/ E/ u/ i& C
IF[#100 GT 2.5] G01/ F+ H% \, f4 d, }/ `
#30=15./ t% l3 ?$ h; A5 r0 E- W( c! T
IF[#100 LT 2.5] GO1<---此條件式可以省略
, ~; |0 D# H* Z3 f$ EN1 G1 X#30 Y#25.......開始加工
: y, q+ u& {7 {4 m/ C: e% @, K) u. o6 ]. o& ]3 o% ]) Q/ W
#30會一直有數值去覆蓋它
3 J& D" I% a; J

1 R; a' Y& v0 \- B  ?% K: a) i4 \0 @# y" `. _
形式3:理髮* f; S& |% P1 ~( h. m( D$ L
#100=2兵(1.)、一兵(1.5)、上兵(2.)、下士(2.5)、中士(3.0)
, k% {5 K4 I/ K: ?& [IF[ #100 LE 3. ] GOTO理15分頭% B9 H% b, s6 B* o2 K9 \: v" m
IF[ #100 LE2.5] GOTO理12分頭
. y3 z* o/ t7 V  aIF[ #100 LE 2. ] GOTO理9分頭# E2 \) K- w- I6 t: z
IF[ #100 LE1.5] GOTO理6分頭* w/ z  o" j" m4 K( |( ?' k
IF[ #100 LE 1. ] GOTO理豬頭2 m- {3 M* S* `( v* q; ?0 w

  i& Z# s# e# B; s* m" I4 \9 X5 E※順序可顛倒,這不會有衝突,如阿兵哥人多可考慮置於首,考慮快捷性

( G8 L: Q  b3 M7 r! O/ L- b- s$ {* v6 ]- j5 D- Z; I
另外的一種B式
' e* G  `) V: T8 ~. |IF[ #100 GE 3. ] GO
- Y; }5 p# }  I: B) {4 w9 k, UIF[ #100 GE 2.5] GO0 }0 ?% p/ W. B
IF[ #100 GE 2. ] GO7 `* S- ~8 X0 S7 G) }$ v& }
IF[ #100 GE 1.5] GO7 {4 y, W& _+ F1 q) @
IF[ #100 GE 1. ] GO4 F: _) u3 |. i4 G7 n( D9 Q7 R
順序不可顛倒喔!不然少將會理成狗頭0 X9 x! e1 g( m# [& R1 u6 L1 y
此例不能安排、佈置快捷性: B7 z8 h* `" S
3 V4 m8 Q- p1 R, R* A1 A3 J+ a

. c  a+ ]' }8 `/ |A式:有點像把數值逼到牆角比,自不量力可直接看出
2 m3 P8 O8 ^9 n5 v4 E- I% v1 \B式:像在自由空間比,如果順序調換
% z. |& u  Z6 r$ a& u" V/ B* e4 [有錢人也可以去小吃店吃牛肉麵; E9 P8 C+ s, i, a
高學歷也可撿回收物當職業

, x% }& ], s; \+ t& ?/ h% i# G
, e' b7 |: m* r4 x, ]再說一下B:順序不能上下倒立,只能轉身如# M8 ~. |; n; {6 I) t8 j3 n
IF[ 3. LE #100 ] GO
9 o* V8 z) D4 t' H+ @/ o2 W- A0 y...
0 \# m- t! i3 X; k& y...3 _4 r5 k3 i" t, q1 r! }! @7 i
IF[ 1. LE #100 ] GO7 U5 m6 L. P- j4 P- G# ~* n8 @
. @- r& ~5 P; x% n
A.B兩者有一種共通的特性,領多少錢就做多少事
" i$ v7 ?; }6 P5 Z3 e+ E如果順序顛倒,可能是使用者需要截長補短(抓長補短)的性質,有互補的作用  w* @& d' ^6 X6 s' p: K4 Z) @/ C

  d  u2 S) a2 b6 k* M1 d) M3 J1 D" Q9 h6 W1 ?
以上為個人的經驗

28

主题

67

回帖

146

积分

注册会员

积分
146
 楼主| 发表于 2013-7-25 22:17:20 | 显示全部楼层
本帖最后由 羅蓋仙 于 2013-7-25 22:18 编辑
1 |$ a9 I  K# M" H6 g- C# B4 L* h9 l; |; Z! h- p
形式3的例子有錯誤,小弟越看越奇怪,抱歉8 u- b1 Q2 c- A6 C) [7 x
黑字例子改成這樣(A式)  L7 W4 b! y+ Q- z
IF[ #100 GE 3. ] GO理15分頭
# S; A& t1 E/ U8 wIF[ #100 GE 2.5] GO理12分頭
- c3 N# h3 n& ~8 E7 |4 SIF[ #100 GE 2. ] GO理9分頭7 _7 @/ S0 K- U3 L. P
IF[ #100 GE 1.5] GO理6分頭- R& W% z/ e$ P6 J* M7 V
IF[ #100 GE 1. ] GO理3分頭
9 v6 e- f6 r7 }; S2 f2 J7 `1 \1 h1 k% c0 A8 l8 }5 j8 o
紫字例子改成這樣(B式)1 C2 Z4 `5 M2 c& {0 I# U
IF[ #100 LE 1. ] GO理15分頭. K* F# x+ Q# ?8 A) E3 w- a8 C
IF[ #100 LE1.5] GO理12分頭7 |. I1 k$ L1 {9 G
IF[ #100 LE 2. ] GO理9分頭0 y& _4 L" K6 D; p
IF[ #100 LE2.5] GO理6分頭
+ r& C' X6 u# ?2 @6 MIF[ #100 LE 3. ] GO理3分頭
回复

使用道具 举报

0

主题

6

回帖

11

积分

新手上路

积分
11
发表于 2013-8-12 13:58:29 | 显示全部楼层
小手一抖,金币拿走,谢谢分享
, S/ R# q3 V+ X1 D& X6 A 精细族  赚钱窍门
回复

使用道具 举报

1

主题

15

回帖

13

积分

新手上路

积分
13
发表于 2013-9-18 13:31:23 | 显示全部楼层
谢谢分享xxfx
回复

使用道具 举报

2

主题

16

回帖

14

积分

新手上路

积分
14
QQ
发表于 2013-10-14 21:32:36 | 显示全部楼层
看得 好纠结
回复

使用道具 举报

0

主题

25

回帖

21

积分

注册会员

积分
21
发表于 2013-10-19 16:14:57 | 显示全部楼层
看不懂啊宏程序
回复

使用道具 举报

1

主题

25

回帖

142

积分

注册会员

积分
142
发表于 2013-11-16 21:52:45 | 显示全部楼层
小手一抖,金币拿走,谢谢分享
回复

使用道具 举报

0

主题

43

回帖

24

积分

注册会员

积分
24
QQ
发表于 2013-11-28 20:42:36 | 显示全部楼层
攒钱哪!速度
人无我有,人有我变,人变我杂,人杂我强
回复

使用道具 举报

1

主题

379

回帖

240

积分

注册会员

积分
240
QQ
发表于 2014-2-10 21:16:43 | 显示全部楼层
看不懂是什么
回复

使用道具 举报

3

主题

96

回帖

312

积分

注册会员

积分
312
发表于 2014-3-14 12:25:01 | 显示全部楼层
這樣反而 有點難懂了   我資質不好
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关闭

站长推荐上一条 /2 下一条

QQ|Archiver|手机版|小黑屋|若枫后处理论坛 ( 苏ICP备11015087号-1|苏公网安备32059002001368号 )

GMT+8, 2026-3-8 01:01 , Processed in 0.288784 second(s), 25 queries .

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

快速回复 返回顶部 返回列表