找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 11312|回复: 35

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

 火.. [复制链接]

28

主题

67

回帖

146

积分

注册会员

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

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

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

×
本帖最后由 羅蓋仙 于 2013-7-24 22:53 编辑
* E" x" k. i9 }: h3 Q3 [: {# i! x0 c' Y. I
$ a& m7 a8 b) l0 t使用者如果需要使用一連串的IF-GOTO,我想說明一些事項與特性
* D* P0 x2 p- ~3 d, ^) L" ~$ d, w) q9 r, k+ d
形式1:
3 y' ?3 \. R  m/ x#100=选兵(陸.海.空)
7 ~2 Z8 `4 U$ h2 l& [/ ]) g0 s& ?IF[#100 EQ 陸 ] GO1
7 t$ w* y) t6 s  b/ l  u% kIF[#100 EQ 海 ] GO2% p& X5 H& f' P; W* k; B$ L
GO3(鼻用說.當然是空軍)& ]2 Q" w+ I# h% a. i+ F0 e
(或不用GOTO3省略它.可以的話在GOTO2後面直接就做,屬於空軍加工部分)6 U% C8 H7 b7 E! M2 |6 Z
因為EQ是很確定.鐵定的東西..使用者可安排快捷性(調整順序)4 z3 W8 }6 e( A/ O3 d- z
) h# G1 z' i* M
如果怕#100有錯誤.如輸入天兵..可在#100輸入後...與GOTO之間進行防呆
* T  @( _/ T# s1 A: O/ V0 s也可不防呆,加工會鑽錯,誰叫使用者故意去測試玩弄MACRO,沒防呆功能用戶最好空跑一下,確定好再做

2 `# [' n( g( G# M+ ?. a" `. b+ C2 Q& Y$ T
還有一種防呆寫法:
5 S# i% V3 @4 B- u0 U#100=選兵(陸.海.空)
) d' m) P5 z4 l+ HIF[#100 EQ 陸 ] GO1& P0 s" M- |! L7 n, A7 e2 A
IF[#100 EQ 海 ] GO2& x4 \( E3 V# z
IF[#100 EQ 空 ] GO3
- E% y4 q% K! ^5 K( e#3000=1.(如果流到這裡表示#100投入有誤)
" v# k0 p* m' P2 d& W! ]& ]N1...., q5 n+ ]' V$ ~' H
, g% n0 ~: h4 C* I3 _
N2....
& l  T( s# ^8 v- _* f' u0 E0 ~; k9 d8 w7 i! M
N3....
1 Y( z- b! o4 \- _8 Z" E. L6 D
3 G2 z' N2 M. \& H8 |( [1 |M99
( F1 u& V( V0 n. [* [1 r
. X* v2 U2 N* w$ ]; J: H9 V
" U( C; r3 ?$ k0 k' F
形式2:; R0 \0 j6 U) N# q8 \" v( D# h
#100=領國家的薪水(人民,老師,軍警,政官(民意.立法))1 V; ]5 Q1 e5 }% h' ^. l* l- X6 a: v4 `7 |
IF[#100 EQ 0万] GO15 }) T: H) `6 e' I
IF[#100 GT 5万] GO2. Q! ^/ Z% Q" r/ v; ~; X
IF[#100 LT 5万] GO3
' N( w1 n  C0 X$ H5 rGO4(可省略條件式[#100 EQ5万])老師
0 A" d9 R" ?, h$ x........... q- V9 M' m$ P6 u; o8 K
N1 人民
$ U6 {6 U. ~; H' _
9 r( x; K/ t) Y8 }, _3 u' n; o2 U9 P9 wN2 政官
& C9 B: w; p. s: g# v  I0 {! z; z, p' E! c
N3 軍警
9 C2 y7 w: P6 E
! x9 t9 t9 Z% @& m0 }, |N4 老師
( t0 B% ^# I' u3 W+ ^; L
! G5 |  K% M; L( tM99
+ Q* A+ m  l0 q- d: F+ u, b* O  S( t. u* u% @
※注意1與3可能會有衝突,有前後順序性的
0 ^! f7 n3 }/ s; D
形式2是以新台币計價的
: g, v& C! l$ f# w' ?3 _! d3 C. S/ w7 D
0 o7 ^( B7 U; @% b; l2 v: y: n- j
另外一個IF-THEN的例子:
" n3 i0 _% t; o# `) h+ W假設#100=已用四則運算,算好的結果( w+ O) q& S$ U( z1 h
, Q7 D. \0 @8 V9 C4 @6 w5 y
IF[#100 EQ 2.5万] TH#30=10.
/ a8 u( ~# b* i6 V+ N1 Q! CIF[#100 EQ 0万] TH#30=10.
9 `0 w/ \6 a. h8 VIF[#100 GT 2.5万] TH#30=20.$ J) q3 |, U# `' N8 e& d) ]# x8 I
IF[#100 LT 2.5万] TH#30=15.6 C' K" u; N& p* g3 d
N1 G1 X#30 Y#25.......開始加工
( l/ c9 J3 U: h
# J& e; H. a5 a
上述2與4性質雷同可能會有衝突,不能這樣寫,可改寫成,A法:
( U* ]3 a# X; h  T5 q- R2 `: B( L: x) g
IF[#100 EQ 2.5] TH#30=10.
( s0 S% d' A# J4 u2 @$ s- `6 |IF[#100 EQ 0.] TH#30=10.5 W; ]8 \4 O% s' R0 e. M
IF[#100 EQ 0.]GO1或IF[#30 EQ 10.]GO1(讀到2先跳開). c6 k+ M5 p2 x; E1 I+ \
IF[#100 GT 2.5] TH#30=20.- \; d# E7 s7 p/ L" j0 t
IF[#100 LT 2.5] TH#30=15.
# B) @, U. B8 u  ?! v3 g: i& |9 ?N1 G1 X#30 Y#25.......開始加工
; V$ e5 i) P  ^3 K$ K8 v" p

) C$ T3 ~& V' ~3 R: T或改寫成,B法:使用或閘(OR)4 v. p5 B# q$ E$ r4 l1 ]
#30=10.5 h, z( A% h' d" G
IF[[#100 EQ 0.]OR[#100 EQ 2.5]]GO1(判斷好就先跳開)3 _2 \# w+ w1 s9 J" x" }. X4 c6 k1 Q
IF[#100 GT 2.5] TH#30=20.
" M9 `3 l  E9 x. N6 x: s4 @IF[#100 LT 2.5] TH#30=15.
+ O! K( P4 H1 wN1 G1 X#30 Y#25.......開始加工1 `5 x$ j5 w# ?

# v8 C" p7 j$ h* J! X1 y4 G- Z- O% N還有一種不使用TH的寫成,如下:
& k* S! E8 d, U1 v30=10.
* y5 }" p  T2 w# {4 o, jIF[[#100 EQ 0.]OR[#100 EQ 2.5]]GO1' o- |$ _' K0 q7 g
#30=20.
, l# S+ h  D2 \- D$ j" V' MIF[#100 GT 2.5] G01, y2 E0 T  z( V5 L  e8 t
#30=15.
" ^& o) D  ^' Y& ~4 m  WIF[#100 LT 2.5] GO1<---此條件式可以省略
# N" h  C" s8 K# x) z- G5 _N1 G1 X#30 Y#25.......開始加工
7 ]$ ~' ]2 F' k0 G/ n% k# j
; V6 I8 N. X- v. A5 Y1 w( W+ N#30會一直有數值去覆蓋它4 c6 ?' g- r+ P- i: L" i

& N+ o1 a1 q6 u
/ y5 e3 e3 {9 J( G3 ^0 H- @形式3:理髮
- U+ U8 ]8 t; i% Z, ~1 t' j#100=2兵(1.)、一兵(1.5)、上兵(2.)、下士(2.5)、中士(3.0)
; U7 y* v( Z% AIF[ #100 LE 3. ] GOTO理15分頭9 q* v+ y8 ^& ^5 Y" l2 M
IF[ #100 LE2.5] GOTO理12分頭+ z; t5 f) v" Y/ q! M
IF[ #100 LE 2. ] GOTO理9分頭1 L0 n: I# j/ ~  I5 ~& g
IF[ #100 LE1.5] GOTO理6分頭
5 C2 Y, g. P3 w% c/ P0 t* _IF[ #100 LE 1. ] GOTO理豬頭
. r9 F2 y- J, E/ Z% I" g
/ o" V9 \; H8 M※順序可顛倒,這不會有衝突,如阿兵哥人多可考慮置於首,考慮快捷性

6 s) \* M2 O; {, J4 N/ h( _% k  O# w/ d$ ~% i6 s0 `3 A9 P# Z8 ?3 z
另外的一種B式4 \. h+ t6 v5 y0 F6 {
IF[ #100 GE 3. ] GO; ~. n7 a- p+ d7 @+ p# }9 N3 S" t
IF[ #100 GE 2.5] GO
0 l. M9 l1 u: M) ~# t* nIF[ #100 GE 2. ] GO' h: l; U+ y$ }5 Q4 J( ?. ?/ a
IF[ #100 GE 1.5] GO3 c, d% q: I8 q+ d2 F
IF[ #100 GE 1. ] GO
6 S9 O$ X1 {1 n8 `順序不可顛倒喔!不然少將會理成狗頭
- |8 l) O2 w* [此例不能安排、佈置快捷性7 W0 L% `) x, @8 H$ R

5 r" C4 c6 L% I7 Y  f+ ~/ m, y) \, I  `4 g
A式:有點像把數值逼到牆角比,自不量力可直接看出% f0 N2 B* p& |% f
B式:像在自由空間比,如果順序調換
& U2 J5 @. d+ y3 f# d/ c+ i有錢人也可以去小吃店吃牛肉麵7 l3 O3 U- M9 u
高學歷也可撿回收物當職業
3 h9 a( ]0 f; c7 X. I

# Q  y- D; M/ P% t' O  U再說一下B:順序不能上下倒立,只能轉身如
/ k3 r! w/ X6 nIF[ 3. LE #100 ] GO
% ~% d* W1 B) z* F8 X$ u...' G. z5 n; `9 i0 n2 a+ ^& C
...3 V/ B, F; z# z5 ~
IF[ 1. LE #100 ] GO
: h3 ?# I5 o8 t1 U; @$ n! E
  S5 \( R6 ]& ]' a4 z( n! k. sA.B兩者有一種共通的特性,領多少錢就做多少事
5 `3 G) c- j) }5 S$ D如果順序顛倒,可能是使用者需要截長補短(抓長補短)的性質,有互補的作用9 V0 k$ ?" ~5 `
! C/ F) d( t+ v; x3 k' P6 a7 F: @3 |

4 |( O# n: d& s( v以上為個人的經驗

28

主题

67

回帖

146

积分

注册会员

积分
146
 楼主| 发表于 2013-7-25 22:17:20 | 显示全部楼层
本帖最后由 羅蓋仙 于 2013-7-25 22:18 编辑 6 t: m7 u3 Z6 B& W2 j2 U) g
- P6 i8 S/ Y# y& H3 E5 h
形式3的例子有錯誤,小弟越看越奇怪,抱歉
% r: L; O: @+ Q3 v/ R( T+ n# F! Z: Q黑字例子改成這樣(A式)/ Z9 i- o) w0 z/ ^' }5 m& O  I
IF[ #100 GE 3. ] GO理15分頭
! i) X1 m$ E/ dIF[ #100 GE 2.5] GO理12分頭* X$ E: r- b$ E' f4 X) c" j2 x
IF[ #100 GE 2. ] GO理9分頭
& i- I. U. z  M; i  M# a9 nIF[ #100 GE 1.5] GO理6分頭
1 X: m( Z7 X' ?2 p2 m+ |" t, bIF[ #100 GE 1. ] GO理3分頭
- ~: C1 m9 O- ~8 k- f# G* \' Z1 ]: ^. x% ?( Z
紫字例子改成這樣(B式)
% G+ V4 F! F2 w( i) x1 t6 I' SIF[ #100 LE 1. ] GO理15分頭
$ `) A7 C  D$ o# p4 p1 NIF[ #100 LE1.5] GO理12分頭
4 d* q" r! ?4 F6 GIF[ #100 LE 2. ] GO理9分頭- h5 X: S3 P  [$ ?
IF[ #100 LE2.5] GO理6分頭
2 @' n# }5 b0 A* e# a. kIF[ #100 LE 3. ] GO理3分頭
回复

使用道具 举报

0

主题

6

回帖

11

积分

新手上路

积分
11
发表于 2013-8-12 13:58:29 | 显示全部楼层
小手一抖,金币拿走,谢谢分享
* |* |) S$ G  [! t, H8 V4 M# y 精细族  赚钱窍门
回复

使用道具 举报

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-6-7 15:08 , Processed in 0.271599 second(s), 25 queries .

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

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