找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 12280|回复: 35

使用一連串IF-GOTO的經驗

 火.. [复制链接]

28

主题

67

回帖

146

积分

注册会员

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

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

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

×
本帖最后由 羅蓋仙 于 2013-7-24 22:53 编辑
& w, f+ V" n6 X4 B. r2 P9 l7 u. D$ t! ^4 v% R
使用者如果需要使用一連串的IF-GOTO,我想說明一些事項與特性
0 f# r+ d$ {) {! m1 F( R. E; |! Z0 ~' ^* O* l- O: {
形式1:
" i, Q/ b0 z; T! z) Q6 S- v% ~/ }5 o#100=选兵(陸.海.空)' v" r8 v$ _2 |6 O
IF[#100 EQ 陸 ] GO18 o  p% K8 T: B
IF[#100 EQ 海 ] GO2
& E8 o* X8 J! V4 w3 `6 l4 ~# l; a# TGO3(鼻用說.當然是空軍)5 N( R: R" J# Q8 Y8 w
(或不用GOTO3省略它.可以的話在GOTO2後面直接就做,屬於空軍加工部分)
8 l! w# a/ f2 k# ^因為EQ是很確定.鐵定的東西..使用者可安排快捷性(調整順序)
/ k7 m3 |# L7 [; ^! t7 ?5 g+ I! F% ^
如果怕#100有錯誤.如輸入天兵..可在#100輸入後...與GOTO之間進行防呆( ]- n4 ]! b" t  ]
也可不防呆,加工會鑽錯,誰叫使用者故意去測試玩弄MACRO,沒防呆功能用戶最好空跑一下,確定好再做

  q2 @$ z% K8 |; d: |- y8 T8 s" ~7 s  v+ H8 ^7 X& }9 F
還有一種防呆寫法:5 d: o5 J3 q; |" b
#100=選兵(陸.海.空)9 t: \4 e4 g$ T) @
IF[#100 EQ 陸 ] GO16 _0 U8 k4 o2 K7 Q* K' \/ G& l
IF[#100 EQ 海 ] GO27 A, X, h) z. J* F! b
IF[#100 EQ 空 ] GO35 L" u$ h; o, p) s9 S/ c' {
#3000=1.(如果流到這裡表示#100投入有誤)6 h7 r% G) t. _! g7 C
N1....
4 Y+ O( n) b& G( |6 Z0 X
+ O% M, D% m) XN2....4 E: H$ q5 Y0 k  m4 a* ~
+ v1 s9 h! x5 i3 W' X
N3....5 j/ j! m- I" O, f
; ], ?+ A( Y+ C4 V8 Q9 ~2 {( T4 S
M99

. K! w1 d  U7 H, Z" l2 ]: j0 h, N8 N) s$ ?2 k
' C: [9 s% W* e% ?, O
形式2:: A& G6 g5 w# o1 g9 ]5 S
#100=領國家的薪水(人民,老師,軍警,政官(民意.立法))
/ U/ K) {- u( j0 [& bIF[#100 EQ 0万] GO1+ U$ a, x* I9 _& X: f/ F5 ?
IF[#100 GT 5万] GO29 \/ Z) U- d! X5 H  V
IF[#100 LT 5万] GO3
$ H1 w7 `4 q; }+ o; ^: ~GO4(可省略條件式[#100 EQ5万])老師
# L8 |5 y- q# f* I7 q..........* l4 Z9 i  T: \: P+ ^
N1 人民  b1 l) S/ Q8 X0 c

* b4 [3 }  E* g- }( q+ {4 IN2 政官
% m" }. T; Z: [0 W4 q! f
& Q$ O# O: J5 Q4 \4 hN3 軍警
! c: p7 R% N- n4 ]# D8 I5 \. W1 D6 e, x6 X3 `8 z& U( d
N4 老師
7 e- }1 X$ x3 H7 I5 E6 Y; G& V7 ^% q4 s  \$ X9 C8 `
M991 u% |- r: |  ~5 D, R: S7 W

+ }4 D- G4 [/ o2 i; H3 O※注意1與3可能會有衝突,有前後順序性的
  \- o& I, a% S" L( \5 O2 A
形式2是以新台币計價的& c6 `6 F; h% q7 z

* Y+ V$ b) P3 ^: z% i2 h/ Z- X. R$ U
& ]# b; w' ]) }! W3 ^* g另外一個IF-THEN的例子:
0 Y. y  t: y) \; Y' T假設#100=已用四則運算,算好的結果
; ?5 Q( \+ h# v; b+ v1 I- O% a5 l% A+ ?: l" N+ A& F6 J8 v# q# U
IF[#100 EQ 2.5万] TH#30=10.  H% {( w4 {* m' O, l
IF[#100 EQ 0万] TH#30=10.5 L& ^( I: Q2 z& Q4 |
IF[#100 GT 2.5万] TH#30=20.
0 U* p. W& D$ y9 E2 I( EIF[#100 LT 2.5万] TH#30=15.9 e& Q# a+ H# ^5 z- E8 r& }
N1 G1 X#30 Y#25.......開始加工

9 c5 j5 N, a! w4 V$ K2 O$ z8 ^% f* b0 Q* c4 B: J4 @+ [
上述2與4性質雷同可能會有衝突,不能這樣寫,可改寫成,A法:
% ^, _$ g$ n7 K
& p6 n# _- q8 K6 j9 W- |& RIF[#100 EQ 2.5] TH#30=10.
# ~- ~7 y& ~5 n& K3 X* _IF[#100 EQ 0.] TH#30=10.; y3 O- d0 Z$ C8 y1 p7 _4 w) f
IF[#100 EQ 0.]GO1或IF[#30 EQ 10.]GO1(讀到2先跳開)* m& a6 y7 u8 j9 ?( r. ?1 O
IF[#100 GT 2.5] TH#30=20.
# f2 b& b* ]5 G; b) @& ~IF[#100 LT 2.5] TH#30=15.0 ?6 ?9 `' n7 E( t: {3 z5 }
N1 G1 X#30 Y#25.......開始加工
! {" p0 f" l" l; E- N3 u
) H! t" L* [/ r0 \0 o+ f/ l/ r& N
或改寫成,B法:使用或閘(OR)
2 F+ k0 o; [* z#30=10.
6 n: c) O; n; hIF[[#100 EQ 0.]OR[#100 EQ 2.5]]GO1(判斷好就先跳開)
/ i3 |$ e% k0 U' w. DIF[#100 GT 2.5] TH#30=20.
+ g+ P1 f$ E0 fIF[#100 LT 2.5] TH#30=15.
; ]0 d; H3 M* S7 o- M7 r) t* c- RN1 G1 X#30 Y#25.......開始加工8 d5 w$ E% f1 \. O/ w
  V6 }4 B/ a/ q0 I# @
還有一種不使用TH的寫成,如下:; s# D. [$ \6 T6 t( ]' F
30=10.
  a2 q; U2 ]' o& Y  m2 |IF[[#100 EQ 0.]OR[#100 EQ 2.5]]GO18 q$ f3 u+ z" Z% {! `
#30=20.7 k( s$ f4 Y, ~/ p" x* W8 c
IF[#100 GT 2.5] G01$ {$ A. l9 K6 t$ E
#30=15.
+ o- b7 l7 d" A4 }# l) yIF[#100 LT 2.5] GO1<---此條件式可以省略& @5 T7 u1 ^  I
N1 G1 X#30 Y#25.......開始加工' n; B4 `) }7 B9 R4 o) [3 Y2 R

% L6 {! @+ Z/ Q$ F5 [+ X1 e8 `#30會一直有數值去覆蓋它
) e, j  q$ O! `8 x# \; D, i  H
# c* k6 `, }0 @5 f: z+ a
& L* [6 n% n& `' R4 D% V# W+ h
形式3:理髮+ p" v+ s/ F, f$ |) x
#100=2兵(1.)、一兵(1.5)、上兵(2.)、下士(2.5)、中士(3.0)
* K1 j: ~# R% A+ K" {IF[ #100 LE 3. ] GOTO理15分頭
' r/ o! m6 o8 ~' N8 QIF[ #100 LE2.5] GOTO理12分頭! H6 |: _3 j; s! Y
IF[ #100 LE 2. ] GOTO理9分頭! x8 A& o5 i% q
IF[ #100 LE1.5] GOTO理6分頭
$ J/ t+ A# O5 D$ cIF[ #100 LE 1. ] GOTO理豬頭
6 ^$ ]9 f- y6 V* P& p& X3 w1 i( U' b
※順序可顛倒,這不會有衝突,如阿兵哥人多可考慮置於首,考慮快捷性

' k, {6 r/ K/ c4 y0 |# H9 u( _3 ?: |" ~, }8 l, X! B
另外的一種B式
& {9 E6 h+ j; v( J; \' ?% I# tIF[ #100 GE 3. ] GO3 B. Y  v% X6 g& v, s
IF[ #100 GE 2.5] GO
; X' M& {- S9 G( o# XIF[ #100 GE 2. ] GO
# T' B& s3 ]; h0 `1 M# ]* f9 E+ ZIF[ #100 GE 1.5] GO
$ z: }* q5 ?+ p( S4 H7 J* M( LIF[ #100 GE 1. ] GO
( }( K) E+ U, Y; F+ U; K" W順序不可顛倒喔!不然少將會理成狗頭! o, D. z: R; V6 V0 I
此例不能安排、佈置快捷性: |) Y- p" B" R, [) V' L
9 m9 V; o& ~: I( r* }' Y  H
; i- T) z, ]+ s! u
A式:有點像把數值逼到牆角比,自不量力可直接看出
! c9 f9 Y1 j8 F' `" TB式:像在自由空間比,如果順序調換
, ~9 j: m( B/ T0 X  V" u有錢人也可以去小吃店吃牛肉麵; |. N( R; u6 z6 E/ R6 B
高學歷也可撿回收物當職業

* a4 r4 m, Y% q6 B: q6 F+ ~# s
" O: r0 u" }% b; X再說一下B:順序不能上下倒立,只能轉身如1 L- ]/ ?( d4 c- b$ _
IF[ 3. LE #100 ] GO
# Y3 \1 O  m2 `  {  W...; q- ]/ m5 h) z8 X; h
...
% Q% d3 `9 a* w9 t, h$ H9 Y6 nIF[ 1. LE #100 ] GO
% b* u3 R) ?) E7 r2 [& ~; [
+ q4 u8 K4 y; T, A, ZA.B兩者有一種共通的特性,領多少錢就做多少事
& F9 l5 B+ d+ \5 S! g如果順序顛倒,可能是使用者需要截長補短(抓長補短)的性質,有互補的作用
. T% u  @5 U4 Z& k; {( H* G6 |& {
# t% x3 j2 X2 K/ D+ e/ [8 I

. B# S$ C3 g5 |2 k以上為個人的經驗

28

主题

67

回帖

146

积分

注册会员

积分
146
 楼主| 发表于 2013-7-25 22:17:20 | 显示全部楼层
本帖最后由 羅蓋仙 于 2013-7-25 22:18 编辑 ; ]( p' T  T2 z" V* t/ B4 G8 {
3 B; P3 [" Q( l
形式3的例子有錯誤,小弟越看越奇怪,抱歉
; e; B/ {! F: V4 N黑字例子改成這樣(A式)# _+ ^. `9 f9 [8 s1 n
IF[ #100 GE 3. ] GO理15分頭* ^0 h) Y( X' D6 T6 w/ t& n- P
IF[ #100 GE 2.5] GO理12分頭" y+ Q: ^5 @' r
IF[ #100 GE 2. ] GO理9分頭6 N( \0 {0 I+ k: J: q, i0 `
IF[ #100 GE 1.5] GO理6分頭5 D- h4 t7 j" C9 d
IF[ #100 GE 1. ] GO理3分頭
: ]1 w  v2 e# c: G9 Y: E. s/ `" N% z7 y
紫字例子改成這樣(B式)7 k6 k5 K( j) n+ F2 s8 c' `* N
IF[ #100 LE 1. ] GO理15分頭
( ]1 r% @/ X% K$ a6 j  P/ W8 O2 uIF[ #100 LE1.5] GO理12分頭
+ v8 j  d+ Y  O* T' E3 rIF[ #100 LE 2. ] GO理9分頭3 I* x: v9 Y$ {# U  F+ H/ r
IF[ #100 LE2.5] GO理6分頭
3 w6 g7 [( L8 |# f* z7 z0 _IF[ #100 LE 3. ] GO理3分頭
回复

使用道具 举报

0

主题

6

回帖

11

积分

新手上路

积分
11
发表于 2013-8-12 13:58:29 | 显示全部楼层
小手一抖,金币拿走,谢谢分享
; f+ C' B' @  d6 V. N1 K 精细族  赚钱窍门
回复

使用道具 举报

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-7-26 04:05 , Processed in 0.194628 second(s), 25 queries .

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

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