中华农历论坛知识讨论区历法知识 → [原创][秦汉昌、万邦来朝九龙原创]干支转换模板


  共有29120人关注过本帖树形打印

主题:[原创][秦汉昌、万邦来朝九龙原创]干支转换模板

帅哥哟,离线,有人找我吗?
秦汉昌
  1楼 个性首页 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:业余侠客 帖子:372 积分:1447 威望:0 精华:0 注册:2008/12/20 18:10:00
[原创][秦汉昌、万邦来朝九龙原创]干支转换模板  发帖心情 Post By:2008/12/24 22:43:00

\  ///////////////本词来源:汉编学习群(群号:11331858)万邦来朝九龙原创
编 字串拼接 ( -- 地址 长度   地址 长度  )
{   \  临时长串 ---   }
      200 个字节空给 临时长串
 3 √   3 √  临时长串  字串传送
 1 √   1 √  临时长串  字串+传送
临时长串  计字节
 。


编 读内码
0 §   0
循环
1 § 内环数 +  1 § 
读第一个字符
1  √ ♀
1  √ ♀

回环

双♀

编 数转天干
如和 1 对应就 字串" 甲"
而和 2 对应就 字串" 乙"
而和 3 对应就 字串" 丙"
而和 4 对应就 字串" 丁"
而和 5 对应就 字串" 戊"
而和 6 对应就 字串" 己"
而和 7 对应就 字串" 庚"
而和 8 对应就 字串" 辛"
而和 9 对应就 字串" 壬"
而和 0 对应就 字串" 癸"
而后 。


编 数转地支
如和 1 对应就 字串" 子"
而和 2 对应就 字串" 丑"
而和 3 对应就 字串" 寅"
而和 4 对应就 字串" 卯"
而和 5 对应就 字串" 辰"
而和 6 对应就 字串" 巳"
而和 7 对应就 字串" 午"
而和 8 对应就 字串" 未"
而和 9 对应就 字串" 申"
而和 10 对应就 字串" 酉"
而和 11 对应就 字串" 戌"
而和 0 对应就 字串" 亥"
而后 。


编 六十甲子
回车
回车
回车

61 1
循环

内环数 10 求余数 数转天干
内环数 12 求余数 数转地支

字串拼接 印字串 回车


回环 。

\ ////////////2007.12.09.万邦来朝.北京.

\  ///////////////本词来源:汉编学习群(群号:11331858)秦汉昌原创

编 天干转数
读内码
10 0
循环 内环数 数转天干 读内码
2 § = 3 §  ∴ = 与 就 内环数
 否则 然后
回环
 1 √ ♀
 1 √ ♀ 。

编 地支转数
读内码
12 0
循环 内环数 数转地支 读内码
2 § = 3 §  ∴ = 与 就 内环数
 否则 然后
回环
 1 √ ♀
 1 √ ♀ 。

编 数转干支    { \ 临时干支串 -- }
    255 个字节空给 临时干支串
1 √ 数转天干 临时干支串 字串传送
数转地支 临时干支串 字串+传送
临时干支串 计字节  。

编 干支转数
 ∽ 2 天干转数
 2 √ 2 + 2 地支转数
  ∴  ♀ 。

\ /////////////////2007.12.09.秦汉昌.上海.

[秦汉昌、万邦来朝九龙原创]干支转换模板[苏子琼汉语编程论坛]
http://bbs.suziqiong.cn/bbs/dispbbs.asp?boardid=50&id=126&page=1&star=1


支持(0中立(0反对(0单帖管理 | 引用 | 回复 回到顶部
帅哥哟,离线,有人找我吗?
xjw01
  2楼 个性首页 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:蝙蝠侠 帖子:866 积分:3804 威望:3 精华:20 注册:2008/3/20 22:14:00
  发帖心情 Post By:2008/12/25 8:12:00

楼主您好,您曾发信件,建议我学习“汉编”

我现在有几个问题想证实一下:

编 数转天干
如和 1 对应就 字串" 甲"
而和 2 对应就 字串" 乙"
而和 3 对应就 字串" 丙"
而和 4 对应就 字串" 丁"
而和 5 对应就 字串" 戊"
而和 6 对应就 字串" 己"
而和 7 对应就 字串" 庚"
而和 8 对应就 字串" 辛"
而和 9 对应就 字串" 壬"
而和 0 对应就 字串" 癸"
而后 。

 

以上程序中的“如和”是不是与西语言的if对应,而和是不是与else if对应

问题二:以上程序在西方语方中可以用两句话得到,汉编是如何实现的:

char * quTianGan(n){//数转天干

 char *(gan[10])={"甲","乙","丁"...};

 return gan[n];

}

注意,这类查表算法比您供的算法要快10倍。

问题三:数学表达式(((a+b/2)+c)/3+d)/8这样的数学表达式,汉编如何表达

我随便提几个基础问题,相比较一下“汉编”在编写万年历方面的优势在哪里。


支持(0中立(0反对(0单帖管理 | 引用 | 回复 回到顶部
帅哥哟,离线,有人找我吗?
浪-淘-沙
  3楼 个性首页 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:版主 帖子:2068 积分:4263 威望:5 精华:4 注册:2008/11/13 21:03:00
  发帖心情 Post By:2008/12/25 8:38:00

虽不想打击楼主学习"汉编",但从楼主几个帖子里的描述,我已经大概了解了汉编的一些基本知识.

比如楼主在其它帖子里说的,"汉编"可以一边解释一边翻译.这与BASIC语言差不多.

10 PRINT 10+10 (回车)

马上显示20

当然,BASIC发展到VB,功能已经大大增强了(不再是一边解释一边执行).

不敢说"汉编"是直接照抄BASIC语言(或者C语言),但若把C语言(BASIC语言也一样)的"保留字"全部用"汉字"来表示,重做一个C语言的全中文版,估计也可以当作"汉编"来使用.(这是另一版本的"汉编").

所以我最终觉得一个算法好不好的关键不在于你用哪种编程语言.而在于算法的逻辑结构上.

网上查到的关于"汉编",反对的声音较大,反对的人主要提的是汉编在技术上没有什么创新.而支持的人只提所谓的民族大义,不提技术上的事.也就是说仅仅喊口号不会有什么发展前途的.


支持(0中立(0反对(0单帖管理 | 引用 | 回复 回到顶部
帅哥哟,离线,有人找我吗?
秦汉昌
  4楼 个性首页 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:业余侠客 帖子:372 积分:1447 威望:0 精华:0 注册:2008/12/20 18:10:00
  发帖心情 Post By:2008/12/25 15:46:00

以上程序,有不完善之处,现作更新:

\  ////////////////本模板可以为夏历日期型数据提供干支之间、干支与数字之间的转换

\  ///////////////本词来源:汉编学习群(群号:11331858)万邦来朝九龙原创


编 字串拼接 ( -- 地址 长度   地址 长度  )
{   \  临时长串 ---   }
      200 个字节空给 临时长串
 3 √   3 √  临时长串  字串传送
 1 √   1 √  临时长串  字串+传送
临时长串  计字节
 。


编 读内码
0 §   0
循环
1 § 内环数 +  1 § 
读第一个字符
1  √ ♀
1  √ ♀

回环

双♀

编 数转天干
如和 1 对应就 字串" 甲"
而和 2 对应就 字串" 乙"
而和 3 对应就 字串" 丙"
而和 4 对应就 字串" 丁"
而和 5 对应就 字串" 戊"
而和 6 对应就 字串" 己"
而和 7 对应就 字串" 庚"
而和 8 对应就 字串" 辛"
而和 9 对应就 字串" 壬"
而和 0 对应就 字串" 癸"
而后 。


编 数转地支
如和 1 对应就 字串" 子"
而和 2 对应就 字串" 丑"
而和 3 对应就 字串" 寅"
而和 4 对应就 字串" 卯"
而和 5 对应就 字串" 辰"
而和 6 对应就 字串" 巳"
而和 7 对应就 字串" 午"
而和 8 对应就 字串" 未"
而和 9 对应就 字串" 申"
而和 10 对应就 字串" 酉"
而和 11 对应就 字串" 戌"
而和 0 对应就 字串" 亥"
而后 。


编 六十甲子
回车
回车
回车

61 1
循环

内环数 10 求余数 数转天干
内环数 12 求余数 数转地支

字串拼接 印字串 回车


回环 。

\ ////////////2008.12.23.万邦来朝.北京.

\  ///////////////本词来源:汉编学习群(群号:11331858)秦汉昌原创


编 天干转数
字串" 甲乙丙丁戊己庚辛壬癸"
3 √ 3 √ 串搜寻 -1 = 就
如和 20 对应就 1
而和 18 对应就 2
而和 16 对应就 3
而和 14 对应就 4
而和 12 对应就 5
而和 10 对应就 6
而和 8 对应就 7
而和 6 对应就 8
而和 4 对应就 9
而和 2 对应就 0
而后
 1 √ ♀
否则 双♀ 字串" 天干不正确" 印字串
然后 。

编 地支转数
字串" 子丑寅卯辰巳午未申酉戌亥"
3 √ 3 √ 串搜寻 -1 = 就
如和 24 对应就 1
而和 22 对应就 2
而和 20 对应就 3
而和 18 对应就 4
而和 16 对应就 5
而和 14 对应就 6
而和 12 对应就 7
而和 10 对应就 8
而和 8 对应就 9
而和 6 对应就 10
而和 4 对应就 11
而和 2 对应就 0
而后
 1 √ ♀
 否则 双♀ 字串" 地支不正确" 印字串
然后 。
编 是实数就转整数
 ♂ 属性值 0= 非 就 实>数 然后 。

编 数转干支  ( 天干数 地支数 --- 干支地址 长度 ) 
 1 √ ♂ 属性值 0= 非 就 实>数 
 1 √ ♂ 属性值 0= 非 就 实>数 
 ∽ 2 求余数
 ∽ 2 求余数 =
2 §  0 §   10 <   1 √   -1 >   与
2 §  0 §   12 <   1 √   -1 >    与  与 与 就
1 √ 数转天干 2 √ 数转地支 字串拼接
 否则 字串" 参数非法" 印字串
 然后
然后 然后 。

编 干支转数

 ∽ 2 天干转数
 2 √ 2 + 2 地支转数
  ∴  ♀
 ∽ 2 求余数
 ∽ 2 求余数 = 就
 1 √ 1 √    否则
双♀ 字串" 您输入的干支不正确" 印字串
然后 。
 

\ ////////////////////////2008.12.24.秦汉昌.上海.


支持(0中立(0反对(0单帖管理 | 引用 | 回复 回到顶部
帅哥哟,离线,有人找我吗?
秦汉昌
  5楼 个性首页 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:业余侠客 帖子:372 积分:1447 威望:0 精华:0 注册:2008/12/20 18:10:00
  发帖心情 Post By:2008/12/25 16:29:00

以下是引用xjw01在2008-12-25 8:12:00的发言:

楼主您好,您曾发信件,建议我学习“汉编”

我现在有几个问题想证实一下:

编 数转天干
如和 1 对应就 字串" 甲"
而和 2 对应就 字串" 乙"
而和 3 对应就 字串" 丙"
而和 4 对应就 字串" 丁"
而和 5 对应就 字串" 戊"
而和 6 对应就 字串" 己"
而和 7 对应就 字串" 庚"
而和 8 对应就 字串" 辛"
而和 9 对应就 字串" 壬"
而和 0 对应就 字串" 癸"
而后 。

以上程序中的“如和”是不是与西语言的if对应,而和是不是与else if对应

问题二:以上程序在西方语方中可以用两句话得到,汉编是如何实现的:

char * quTianGan(n){//数转天干

 char *(gan[10])={"甲","乙","丁"...};

 return gan[n];

}

注意,这类查表算法比您供的算法要快10倍。

问题三:数学表达式(((a+b/2)+c)/3+d)/8这样的数学表达式,汉编如何表达

我随便提几个基础问题,相比较一下“汉编”在编写万年历方面的优势在哪里。

您好:

    对于您提的问题,我无法确切地回答您,因为我也是汉语编程的初学者。我是这么认为的,目前汉语编程对于英编来说,也没有多大的优势,仅仅是可用而已。我也不排除汉编是在西方编程模式下发展而来的,但汉编也有它的特色,完全可以朝着我们民族文化的方向发展。如果我们觉得汉语编程不好用,其实也可以发挥自己的创造力来完善它。如果我们不去完善,不利于弘扬我们的华夏文化。

    其实,对于英编,汉编,仁者见仁,智者见智,各有说辞,只要愿意花时间来思考这个问题,不管是正方观点还是反方观点,都有利于汉编向前发展,从量的变化到质的飞跃,不断超越。

    我个人并没有认为汉编如何优越于英编,我也不认为目前的汉编如何优秀,然而,我相信,汉编一定会有一个美好的未来。我是这么想的,我们不可能,世世代代用英语来编程,如果目前没有汉编,也会有人来去探索。我们现在已经在汉编方面有了一定的发展,就意味着后继者可以批判地继承前人的成果,我们学习汉编,不仅仅是学习目前的汉编技术,更是为了发扬汉语编程计算机技术。并不是要向大家推荐一门实用的高效的能带来可观的经济利益的技术,而是想和有识之士在传承华夏文明方面进行探讨和勉励,显然,如果汉编一已经成为世界上一流的计算机编程语言,那还需我来介绍吗?我是出于对汉编计算机技术的担心而多说几句而已。

  学习汉编,不一定是目前汉编的支持者,但他一定是华夏文化爱好者,民族自信者,或许,有一天,他能发明一种与目前汉编迥异的汉语程序语言。


支持(0中立(0反对(0单帖管理 | 引用 | 回复 回到顶部
帅哥哟,离线,有人找我吗?
秦汉昌
  6楼 个性首页 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:业余侠客 帖子:372 积分:1447 威望:0 精华:0 注册:2008/12/20 18:10:00
  发帖心情 Post By:2008/12/26 11:27:00

  呵呵,虽然本系汉语编程初学者,缺泛对汉编祥实了解,暂时还没有发言权,但是,为了表示的成意,我对许老师的三个问题发表一下我的浅见:

  问题一:关于汉编与英编的程序结构问题,虽然,我对英编的结不甚了解,我仅仅看过几遍关于VB编程的书。但初看汉语编程, 脑海也会浮现出汉编与某种英编结构相似的感性反映;当我稍加了解汉编,多运用几次汉编进行应用操作,我体会到汉编与英编程序的某些结构虽然貌似相同,却实质运用迥异。汉语编程中的“如和      而和       而和     其余则      而后   ”确实是一个选择结构,从字面上看,确实和IF的意思近义,由我对IF句式的使用不熟,无法深究其异同。

  汉编应用的过程就是不断地编词语,形成一部符合个人使用习惯的汉语词典。就像,我上面的程序,可能用英编一二句话就可以编好,用汉编虽然多了几个汉字,但这样的事情只需做一次即可,只要编好了那个词,那个词的功能就永远存在,以后只要把它放入词典,编好的词语就可以无限次的应用。汉编若发展起来了,估计我们会像编康熙字典或辞海那样,收录民间和官方常用的汉编词语,编写一套收集各种功能的词汇。显然,汉编是向自然语文言发展的,汉语编程就像写文章,不但要求表达某种意义,而要求表达方式通俗易懂,能被大众理解。当然,讲这些,并不是说目前汉编已经做得很好了,而是说汉语是一种表意语言,没有语法约束,与计算机原始语言有相似的地方,适合计算机,我们的计算机语言向自然语言的过渡已开始了。

  问题二:关于汉编与英编程序的算法的运算速度问题,我认为存在绝对的快或慢,都有一个优化的过程,都可以让它变快。我想,汉编上面的语句,与你提出的查表法应该是有不同之处的,汉编是从字到词,从词到句,又从句到词,从词到句,反复衍生的,如果上面那个词的结构运算速度太慢的话,那建立在那个词之上的其它词不就运算更慢,如果由其衍于的词过多,不就会导致有些词能用,汉语编程的词典式架构也就不具备科学意义。而实际应用中,我们发现汉编的词典式架构是一种优化,更有利于提高速度。老实地说,对于运算速度问我不知道汉编是怎么解决的,但这问题确实被解决了,否则的话,某些军事项目用汉语编程来做,是危险的,更不用说获奖接受军事界表章。

  问题三:关于汉编的数学表达式问题,原则上讲,汉语编程是不分数学表达式和文学表达式的,因为汉编采用我们古代数学上的前缀表示法和建立珠算、数筹结构上的数摞运算,若想知道汉编是怎样来行数学表达的,必须了解汉编的数摞知识。虽然汉编不用后缀表示法,但也有为了科学计算的需要设置某个功能来专为数学运算提供,比如,数组(数组是汉语编程的一种数据类型)等。

  我用汉编的方法之一来表达您提供的代数式:

  (((a+b/2)+c)/3+d)/8    汉编表达如下:

  a b + 2 / c + 3 / d + 8 /

  从这两种表达方式可以看出,我们古代的前缀表达无需括号,符合计算机的运算,可以提高运算速度。后缀表达符合现代人(不一定符合我们古代计算的习惯)的习惯,通过括号定义运算的先后顺序,使之容易理解,但在运算速度上不如按计算机的运算顺序进行的前缀表达。

  结语:汉语编程对天文算法又何实际意义,对夏历的计算机编撰有何方便之门。这两点,我只能略说其一,我们古代《尚书》里面就记载了具有很高水平的天文数据:

    帝曰:“咨!汝义暨和,期三百有六旬有六日,以閏月定四时,成岁。”
  
   尧帝说:“这才是正确的算法,一个周期有366天,要通过增插闰月来确定四季,从而成为一年”。

  我们在天文学方面长期领先于世界,当然,有传承和弘扬的必要,汉语编程是实现古代天文算法的最佳语言。现代天文算法不与我们传统的天文算法相结合,是无法实现夏历的完美性的。

  本人暂说这些,欢迎大家讨论。


支持(0中立(0反对(0单帖管理 | 引用 | 回复 回到顶部
帅哥哟,离线,有人找我吗?
秦汉昌
  7楼 个性首页 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:业余侠客 帖子:372 积分:1447 威望:0 精华:0 注册:2008/12/20 18:10:00
  发帖心情 Post By:2008/12/26 12:59:00

万邦来朝九龙 21:29:59

只要是计算 就是这样的

杨柳不青 21:30:14

这点不太好

万邦来朝九龙 21:30:21

但是 可以化简

杨柳不青 21:30:28

如何简化?

万邦来朝九龙 21:31:07

你没看 我的那个 九章算术的题解?

杨柳不青 21:31:17

在哪里?

万邦来朝九龙 21:32:07

http://bbs.hybcw.com/dispbbs.asp?boardID=3&ID=36&page=1

万邦来朝九龙 21:33:50

任何复杂的东西 都是有简单的东西 组成的

厚德载物 21:34:11

大道至简。可以看一下道德经。

万邦来朝九龙 21:34:19

这就需要我们 善于解剖 善于化整为零

杨柳不青 21:34:27

我的密码忘了,无法登陆,哭

万邦来朝九龙 21:34:43

你重新 注册吧

万邦来朝九龙 21:36:22

最终化为 0 和 1

万邦来朝九龙 21:36:37

这就达到我们的目的了

万邦来朝九龙 21:37:01

也就是阴 与 阳

厚德载物 21:37:14

是的。

厚德载物 21:37:42

道生一,一生二,二生三,三生万物

万邦来朝九龙 21:37:53

你是研究道教的?

厚德载物 21:37:55

阴与阳是二,一是太极,三是阴阳之间。

 

 

 

 

 


支持(0中立(0反对(0单帖管理 | 引用 | 回复 回到顶部
帅哥哟,离线,有人找我吗?
秦汉昌
  8楼 个性首页 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:业余侠客 帖子:372 积分:1447 威望:0 精华:0 注册:2008/12/20 18:10:00
  发帖心情 Post By:2008/12/26 13:00:00

万邦来朝九龙(530359837) 13:10:46
什么 VB ,什么 VC,什么 VJ ,什么 E ,等等,
万邦来朝九龙(530359837) 13:11:03
无论怎么变,怎么改,
万邦来朝九龙(530359837) 13:11:15
那个 花括号,是 变不掉的,
万邦来朝九龙(530359837) 13:11:57
这就是他们的 典型的 缺陷。
万邦来朝九龙(530359837) 13:13:29
{  ……
   {  ……

      {  ……
        ……  }
    ……  }
…… }
万邦来朝九龙(530359837) 13:13:45
他们的 程序格式 是这样的。
万邦来朝九龙(530359837) 13:14:01
一个程序,
万邦来朝九龙(530359837) 13:14:08
不管是大程序 还是小程序,
万邦来朝九龙(530359837) 13:14:27
总是 这样 花括号 套着一个 花括号,
万邦来朝九龙(530359837) 13:14:50
就像滚雪球 一样,
万邦来朝九龙(530359837) 13:15:01
滚在一样。
万邦来朝九龙(530359837) 13:15:16
而我们的汉编,不是那样的。
万邦来朝九龙(530359837) 13:15:41
我们的汉编 可以把某些 动作 ,独立作成 词语,
万邦来朝九龙(530359837) 13:16:14
比如 天干 地支 转换模板,就要 六七个词,
万邦来朝九龙(530359837) 13:16:37
既可以 协同 使用,
万邦来朝九龙(530359837) 13:16:43
也可以 独立 使用。
万邦来朝九龙(530359837) 13:17:13
最简单的,就是那个  字串拼接
万邦来朝九龙(530359837) 13:17:38
我是 可以作为 基本词,而加入 系统词库的。
万邦来朝九龙(530359837) 13:17:46
他是 可以作为
万邦来朝九龙(530359837) 13:18:01
通用词,而被广泛 引用的。
恰同学少年(992736116) 13:18:47
是的,希望系统词,能收录
万邦来朝九龙(530359837) 13:22:01
在于
万邦来朝九龙(530359837) 13:22:03
汉编 与 英编 的一最显著的 区别,
万邦来朝九龙(530359837) 13:22:31
汉编的词,一次创作,多次使用,
万邦来朝九龙(530359837) 13:22:45
英编的 程序,一次创作,多次 抄
写。

[此贴子已经被作者于2008-12-26 14:20:47编辑过]

支持(0中立(0反对(0单帖管理 | 引用 | 回复 回到顶部
帅哥哟,离线,有人找我吗?
秦汉昌
  9楼 个性首页 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:业余侠客 帖子:372 积分:1447 威望:0 精华:0 注册:2008/12/20 18:10:00
  发帖心情 Post By:2008/12/26 13:01:00

多谢许老师指点:数转天干程序能用一行编写,呵呵:

编 数转天干 字串" 癸甲乙丙丁戊己庚辛壬"   ∴ ♂ ♂ 10 <   1 √   -1 >  与 就  2 * 2 剪串腹 否则 字串" 天干数有误"
然后 。

[此贴子已经被作者于2008-12-26 15:45:28编辑过]

支持(0中立(0反对(0单帖管理 | 引用 | 回复 回到顶部
帅哥哟,离线,有人找我吗?
秦汉昌
  10楼 个性首页 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:业余侠客 帖子:372 积分:1447 威望:0 精华:0 注册:2008/12/20 18:10:00
  发帖心情 Post By:2008/12/26 13:06:00

上楼的数转天干程序测试结果如下:

0 数转天干 印字串 癸★........
1 数转天干 印字串 甲★........
2 数转天干 印字串 乙★........
3 数转天干 印字串 丙★........
4 数转天干 印字串 丁★........
5 数转天干 印字串 戊★........
6 数转天干 印字串 己★........
7 数转天干 印字串 庚★........
8 数转天干 印字串 辛★........
9 数转天干 印字串 壬★........
10 数转天干 印字串 天干数有误★........
11 数转天干 印字串 天干数有误★........

[此贴子已经被作者于2008-12-26 15:41:14编辑过]

支持(0中立(0反对(0单帖管理 | 引用 | 回复 回到顶部
总数 28 1 2 3 下一页

返回版面帖子列表

[原创][秦汉昌、万邦来朝九龙原创]干支转换模板








签名