卜卦命理程式中,有关位置的表示

Home Home
引用 | 编辑 wclement
2009-02-18 14:52
楼主
推文 x0
版主您好:


卜卦命理程式中,「位置」的系统变数经提取后如下:
#{本卦.六爻的位置}# =0
#{本卦.五爻的位置}# =1
#{本卦.四爻的位置}# =2
#{本卦.三爻的位置}# =3
#{本卦.二爻的位置}# =4
#{本卦.初爻的位置}# =5

因为用来表示的常数和实际的习惯说法有点不同,能否请板主考虑使 常数=爻位

#{本卦.六爻的位置}# =6
#{本卦.五爻的位置}# =5
#{本卦.四爻的位置}# =4
#{本卦.三爻的位置}# =3
#{本卦.二爻的位置}# =2
#{本卦.初爻的位置}# =1

如此,如果要提取应爻或是世爻的位置,就不用自行再转换,写起来也比较直觉,
只是一个小建议,如果会动到整个程式主体,还是按原排法也可以。

献花 x0
引用 | 编辑 mainchen
2009-02-19 10:21
1楼
  
如此,如果要提取应爻或是世爻的位置,就不用自行再转换,写起来也比较直觉,
只是一个小建议,如果会动到整个程式主体,还是按原排法也可以。

确实, 这会牵动到内部, 所以暂时不会动, 不过您可以先行设定一组自己习惯的变数, 往后直接代用即可, 例:

设定:六爻=0
设定:五爻=1
设定:四爻=2
设定:三爻=3
设定:二爻=4
设定:初爻=5

如果:#{本卦.六爻的位置}#=六爻
如果:#{本卦.五爻的位置}#=五爻
如果:#{本卦.四爻的位置}#=四爻
如果:#{本卦.三爻的位置}#=三爻
如果:#{本卦.二爻的位置}#=二爻
如果:#{本卦.初爻的位置}#=初爻

献花 x0
引用 | 编辑 wclement
2009-02-19 14:22
2楼
  
谢谢老师提供的解决方式,一时间还真没想到这个方法。
老师的方法,让我联想到世应的提取,应该可以改用阵列

爻位置=[6,5,4,3,2,1]

应用:

爻位置[本卦.世爻的位置]=>取出世爻位
爻位置[本卦.应爻的位置]
爻位置[本卦.初爻的位置]

另再请教老师,在变数设定上,我设六个变数,或是改用阵列方式,那一种比较好?
变数设太多,会不会把整个系统搞挂了,
因为初学,对于程式设计应有的认识仍极外行,还请老师拨冗回答。

献花 x0
引用 | 编辑 mainchen
2009-02-20 14:19
3楼
  
用阵列方式:

设定:爻位=[-1,5,4,3,2,1,0] { 爻位[0] 不用, 由 爻位[1]表初爻 ~ 爻位[6]表六爻 }
如果:#{本卦.六爻的位置}#=爻位[6]

用变数方式:

设定:六爻=0
设定:五爻=1
设定:四爻=2
设定:三爻=3
设定:二爻=4
设定:初爻=5
如果:#{本卦.六爻的位置}#=初爻

---------------------------------------------------------------------

这两者运用皆可, 重点是 "方便以后阅读" 即可.
如果用阵列, 还可运用在 "回圈:" 指令, 这需要看您的用途了.

变数设定几千个, 执行效能都还好, 放心使用.

献花 x0