找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 7718|回复: 35

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

 火.. [复制链接]

28

主题

67

回帖

146

积分

注册会员

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

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

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

×
本帖最后由 羅蓋仙 于 2013-7-24 22:53 编辑 + T5 |2 v# d: v% v' w) `
5 i2 \2 H4 x% L2 _' c/ ?# U0 L
使用者如果需要使用一連串的IF-GOTO,我想說明一些事項與特性
0 Q4 d' J. U) G4 R$ P7 R' V& q4 `6 o' t  O, [8 J3 d7 q9 r: p
形式1:& W2 Y% e0 A2 C/ z2 }
#100=选兵(陸.海.空)3 Q( E6 |" L/ n9 b) J. p
IF[#100 EQ 陸 ] GO17 Z# ]) t4 o+ b+ T5 ^5 Q* b
IF[#100 EQ 海 ] GO2
; N  A/ t" N; N3 s" w2 J  yGO3(鼻用說.當然是空軍), l. r' p: c) Q
(或不用GOTO3省略它.可以的話在GOTO2後面直接就做,屬於空軍加工部分)+ Z# c# ^3 |/ d/ ^6 o+ h
因為EQ是很確定.鐵定的東西..使用者可安排快捷性(調整順序)9 R* ]+ N' s" y, ^& C( l" \* W/ L

' }0 C+ ^, b( E9 [如果怕#100有錯誤.如輸入天兵..可在#100輸入後...與GOTO之間進行防呆
* O% Q. L" m% U也可不防呆,加工會鑽錯,誰叫使用者故意去測試玩弄MACRO,沒防呆功能用戶最好空跑一下,確定好再做

4 Y" U' s  z6 n2 x. l0 V7 V! H4 M# u! ^$ d9 e/ z
還有一種防呆寫法:
+ y' U* z/ _- S$ v& a1 Y#100=選兵(陸.海.空)9 `# n0 W+ |  h! m; b2 I: h. ^  e
IF[#100 EQ 陸 ] GO18 L8 Y7 Q7 R  m  M. O) Z# b
IF[#100 EQ 海 ] GO2* E; @* x( j8 |/ Y& F
IF[#100 EQ 空 ] GO36 n6 s2 n( A) E( t% s# {
#3000=1.(如果流到這裡表示#100投入有誤)1 \- z* i  W: V8 f8 p
N1....! ]. X% m# T# h# y
2 J9 n( U4 Y% b2 }* J7 g
N2....+ |! ~& z3 a! W6 P

0 M' [8 f# p6 B% TN3....% }) M! b- M' z7 `

2 \, j6 x! c/ a  j  @- aM99

4 z1 z# ?  y' Y/ r* A
" l3 w! @* A" v7 J
6 A, @+ M% u; O% ]# J) k3 {形式2:5 u( P( G1 V) Z* S$ I
#100=領國家的薪水(人民,老師,軍警,政官(民意.立法))9 M% A4 f! @% w( S8 E# S
IF[#100 EQ 0万] GO1
# F7 b0 [/ h% w. T7 ?IF[#100 GT 5万] GO2
# j2 X% j( @& v, a/ fIF[#100 LT 5万] GO3: `+ S5 g$ W0 J
GO4(可省略條件式[#100 EQ5万])老師
/ H0 _' a5 Y6 O6 `5 w..........
7 t5 b: n! {$ j* j6 k/ mN1 人民$ ]' y+ r; h: R1 n" ?9 q4 w

8 Q1 X2 g0 p& E: t1 K4 YN2 政官
; x  h  t% q3 N
8 M/ [# x  Z. H$ N4 iN3 軍警9 i# S: b* L" A; @
" }+ v- V% n0 N$ {
N4 老師: m2 p- ]( p/ R7 }7 E9 I/ j# K

* L+ q6 ^& n3 R6 GM99
" Q+ t+ }* |; R  _. ~: g
7 G# `2 M$ ?1 e, ^! Y! U※注意1與3可能會有衝突,有前後順序性的

* W" r* P, i+ |1 `" J5 N$ e6 y# n9 k形式2是以新台币計價的
4 t& ?: |2 G2 l( B# e3 m# y
) B% Q# i" a# a, h3 J  k0 t6 m  V2 z& E+ q2 E+ Q
另外一個IF-THEN的例子:7 [4 `& ?" ^4 z2 Q
假設#100=已用四則運算,算好的結果  m8 L* M, x  G& e3 g

7 K- v+ Q4 B3 |6 _- k% fIF[#100 EQ 2.5万] TH#30=10.5 J  D7 N4 s: D7 X' I
IF[#100 EQ 0万] TH#30=10.
) V4 Z( \0 y  ^: }8 W4 Q2 EIF[#100 GT 2.5万] TH#30=20.( R% C9 G! D) J1 Z
IF[#100 LT 2.5万] TH#30=15.
! ?& T- g* ^4 ~2 a0 DN1 G1 X#30 Y#25.......開始加工

1 }- H# i. e( l! W  A. E9 D/ P' @% D+ }
上述2與4性質雷同可能會有衝突,不能這樣寫,可改寫成,A法:
+ X: l8 {4 m) T; [- Y8 K
* q: u8 x  j% W6 oIF[#100 EQ 2.5] TH#30=10.. N' B5 Q; t$ e; `
IF[#100 EQ 0.] TH#30=10.
+ z3 o6 B/ D) [, g0 k* a4 ^IF[#100 EQ 0.]GO1或IF[#30 EQ 10.]GO1(讀到2先跳開)2 G: _- ^: t# P2 x1 ?& U! M
IF[#100 GT 2.5] TH#30=20.' I. i' Y* z0 y3 {. x# c( L# \1 F
IF[#100 LT 2.5] TH#30=15.
5 _5 e$ b" U! f# p) gN1 G1 X#30 Y#25.......開始加工

/ z6 P; C; d0 J+ h" q" R% Y4 O% U# M9 S
或改寫成,B法:使用或閘(OR)- U/ r5 D% O" A! y0 U: z
#30=10.& x# ~+ k( V9 p, E- r9 z! n# I6 t. J
IF[[#100 EQ 0.]OR[#100 EQ 2.5]]GO1(判斷好就先跳開)
. d, ?4 b; X( C) ]IF[#100 GT 2.5] TH#30=20.% K4 W2 }+ k" u
IF[#100 LT 2.5] TH#30=15.
) t  W: y; J$ rN1 G1 X#30 Y#25.......開始加工; V) Y- v; O6 @" X5 _! V

( v* H. z& T, X7 S( Q' d還有一種不使用TH的寫成,如下:
6 O* t# x6 z. m& K30=10.5 e) P. b. I2 F/ t, w  j8 f8 F1 J8 I
IF[[#100 EQ 0.]OR[#100 EQ 2.5]]GO1- K, X+ J' U; q* G/ ]( ?2 O
#30=20.7 Q  Y& N7 u/ n5 Z8 u0 Z
IF[#100 GT 2.5] G01% d  c& x) i6 j# O; A
#30=15.
9 v7 X( @8 t' ]: {) t# L5 G5 K4 ]IF[#100 LT 2.5] GO1<---此條件式可以省略
+ r$ O9 E$ h- Q3 Z; A& `N1 G1 X#30 Y#25.......開始加工
' K( K$ T8 R2 M: q# e  U/ P- c3 a- l- A! l! Y7 Z
#30會一直有數值去覆蓋它
8 t" O+ }- k& Q" ~2 C* C

4 L' V# S& J5 @4 C4 Z# x. @+ Z  g4 _
形式3:理髮
* j; Y4 s+ I. i$ p#100=2兵(1.)、一兵(1.5)、上兵(2.)、下士(2.5)、中士(3.0)
  [; H3 H. w6 a7 v$ uIF[ #100 LE 3. ] GOTO理15分頭
4 s. s# U' J/ g) SIF[ #100 LE2.5] GOTO理12分頭4 v4 A# X0 I' a- K' }
IF[ #100 LE 2. ] GOTO理9分頭
$ j9 x4 q; @' Y1 ~; J- ?IF[ #100 LE1.5] GOTO理6分頭
1 G8 d; C  [5 q. U" g7 D0 BIF[ #100 LE 1. ] GOTO理豬頭
: j" ]9 w: V3 B+ p$ i" Y/ x$ v! y; `/ b) L8 Q1 H! r& x
※順序可顛倒,這不會有衝突,如阿兵哥人多可考慮置於首,考慮快捷性

% D/ N) d5 e5 D' T! a$ Y" X- R
9 E" w; I0 {4 k! D另外的一種B式
/ o# l5 G: R3 X: Q+ z9 [0 ^! a( l7 oIF[ #100 GE 3. ] GO
- `1 }9 Y# ~7 C9 f; |9 ~& bIF[ #100 GE 2.5] GO
( D7 v$ Y0 e8 K7 PIF[ #100 GE 2. ] GO
' s2 u# G+ _7 P; z4 @3 u7 a) iIF[ #100 GE 1.5] GO
' B/ s5 p, x2 I8 s" _2 ]IF[ #100 GE 1. ] GO
$ D5 d) I6 d& ]順序不可顛倒喔!不然少將會理成狗頭
: b( w0 q5 e( C: W) |& t( k& @' G1 w此例不能安排、佈置快捷性. M  E. Q& N: S  `2 M  R9 R
4 B+ \/ ^2 m2 ~
; J4 q# w9 ~+ x. b
A式:有點像把數值逼到牆角比,自不量力可直接看出. o& R6 s- L: y3 ?+ x# m. O% D; b' T
B式:像在自由空間比,如果順序調換
# F* J) }0 ]9 E2 ~2 a  P& g" D( O有錢人也可以去小吃店吃牛肉麵
# f$ P" G% o8 T% y高學歷也可撿回收物當職業

! j6 F. s: O  A% a. }" g  h4 P  B! I! o- y7 ~- X
再說一下B:順序不能上下倒立,只能轉身如, _( r6 w. p: \* O2 k6 I
IF[ 3. LE #100 ] GO  }* e2 s4 H- P# a& F
...
0 v2 Z8 {4 N+ |...
% N! g$ ~- @4 q1 _. n& fIF[ 1. LE #100 ] GO
1 E9 U( ~6 {' r3 v. k3 J
" x3 z# u9 i. p% z+ Z$ wA.B兩者有一種共通的特性,領多少錢就做多少事
5 o2 g6 o' J) M) h* V9 q) d如果順序顛倒,可能是使用者需要截長補短(抓長補短)的性質,有互補的作用; V9 s) Z6 \+ g: G& m% i* v
. ?3 q, Z$ g3 ?# |1 I9 N

( f) b2 y7 ]1 I  S: {以上為個人的經驗

28

主题

67

回帖

146

积分

注册会员

积分
146
 楼主| 发表于 2013-7-25 22:17:20 | 显示全部楼层
本帖最后由 羅蓋仙 于 2013-7-25 22:18 编辑
' q- f' ~- V" i3 H1 h3 u# f& ], b$ N" b7 K  j
形式3的例子有錯誤,小弟越看越奇怪,抱歉, g: G1 S8 u9 r
黑字例子改成這樣(A式): k. g* F8 Z' u( C+ Q  n/ Z. ]/ n
IF[ #100 GE 3. ] GO理15分頭2 F# _) [) {, Z: X
IF[ #100 GE 2.5] GO理12分頭( I- j- C" l+ |' ?1 _, E" k: i
IF[ #100 GE 2. ] GO理9分頭2 N9 u: ]  \5 K$ p
IF[ #100 GE 1.5] GO理6分頭2 c5 r7 Q4 M8 A+ b
IF[ #100 GE 1. ] GO理3分頭1 D( g5 A, F& i+ \
! l. b/ C/ A- H% W: {
紫字例子改成這樣(B式)% ~0 _+ |4 Z$ n( ^" m! s8 V
IF[ #100 LE 1. ] GO理15分頭# `! ~: Q6 z1 E* t
IF[ #100 LE1.5] GO理12分頭* @! H/ ^# _' I% Y* u6 z5 i
IF[ #100 LE 2. ] GO理9分頭  g3 c+ q5 E2 B/ m
IF[ #100 LE2.5] GO理6分頭; `" ?: ?% w' K" K  X9 s6 y
IF[ #100 LE 3. ] GO理3分頭
回复

使用道具 举报

0

主题

6

回帖

11

积分

新手上路

积分
11
发表于 2013-8-12 13:58:29 | 显示全部楼层
小手一抖,金币拿走,谢谢分享
0 B# a6 b0 E6 a1 P* ~ 精细族  赚钱窍门
回复

使用道具 举报

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, 2025-4-4 08:11 , Processed in 0.499201 second(s), 24 queries .

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

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