中国幻方研究者协会郑重告诉你:
延安高治源老师在2022年12月8日晚上11点,成功编成任意阶幻方的Vb演算程序。从此人们只要输入幻方的阶数就可以在电子表格中获得任何阶幻方,在洛书诞生到现在,这是幻方历史上的第一个能够完成所有幻方阶数的软件。 幻方历史上第一套任意阶构造程序是这样诞生的
中国幻方研究者协会
相传在公元前23世纪大禹治水的时候,在黄河支流洛水中,浮现出一个大鸟龟,甲上背有9种花点的图案,人们将图案中的花点数了一下,竟惊奇地发现9种花点数正巧是1一9这9个数,各数位置的排列也相当奇妙,后来人们就称这个图案为洛书。
洛书就是一个三阶幻方,杨辉是第一个把“洛书”作为一一个纯数学问题来以研究的,公元1275年,他在《续古摘奇算法》的上卷记录了这方面的成就,给出了三至十阶幻方及变式,并提出了三阶、四阶幻方的构造方法,沿袭至今仍是很宝贵的数学典籍。杨辉之后,对纵横图的研究相继不断,明朝程大位,清朝保其寿、方中通、张潮,以及我国著名数学史家李俨,还有一些近代的学者们,都为纵横图的发展作出了贡献。
当代,研究幻方构造的人甚多,人们构造高阶幻方,高次幻方,类自然数幻方,完美幻方、同余幻方、优美幻方,全子幻方、母子幻方,田园来客幻方、素数幻方、勾股数幻方,幻多边形,穿越幻方、立体幻方,双重幻方、月光宝盒幻方、勾股数组幻方、稀疏幻方、稀疏幻立方、幻圆、幻阵、反幻方等。构造幻方是一件辛苦又有趣的工作,人们一直盼望有一个软件,能够迅速获得任意阶幻方。
这个愿望终于实现了,在中国幻方研究者协会在2022年12月发刊了22期和23期(幻方双鹰专刊,苏茂挺、钟明幻方专辑,上下册,1100多页)两期幻方专辑后,得到许多信息,延安高治源老师在2022年12月8日晚上11点,成功编成任意阶幻方的Vb演算程序。从此人们只要输入幻方的阶数就可以在电子表格中获得任何阶幻方,在洛书诞生到现在,这是幻方历史上的第一个能够完成所有幻方阶数的软件。由于构造方法的不同,幻方阶数一般分为4m阶,4m+2阶,奇数阶三大类。4m阶幻方采用了广西玉林陈发桂老师的4m阶幻方的构造方法,主体思想是两次倒写。4m+2阶幻方使用了山西李宏晋老师的对角线对调方法,也参考了贵州施学良书籍中的三向异位法。在编程时,奇数阶幻方又可以分为3m与3m±1阶两类,其中3m阶幻方为循序填对角线方法,3m±1阶幻方为马步法,主要参考了湖北曹陵老师的马步法,所构成的幻方都是完美幻方。
构造幻方的方法非常多,但要把它变成可以构造任何幻方的工具是一项大工程,有规律的方法比较容易构造幻方,其它方法显然需要不断努力,有更多的人参与。希望以后能够将用各种方法构造的幻方软件不断创造出来,使得幻方的发展更上一层楼。
程序有所损坏需要联系作者修补,或者想进一步开发程序,可与高治源老师联系,微信号 :dsdqh1012,昵称:大山的情怀 陈振华老师从幻方的结构、数字排列规律等方面入手,提出了“幻方的分合统一”、“集约目标”等概念,他写了120多篇幻方应用的文章后指出,幻方结构是描述整个宇宙的一个“简单的理论”。可见幻方研究迎来了划时代的潮流,幻方构造程序的普及和推广使用,更具有十分重要的意义。下面我们将这套程序做一简单的介绍:
If n Mod 2 = 1 Then 奇数阶幻方 If n Mod 4 = 0 Then 双偶阶幻方 If n Mod 4 = 2 Then 单偶阶幻方 Cells(2, 5) = ' 恭喜你构造成功' + Str(n) + '阶幻方'广西玉林陈发桂老师正在写幻方书,也在写等幂和数组的文稿,他的儿子陈川、儿媳王萍都是数学老师,王萍老师在网络上找到幻方协会后,认识高老师,然后建了一个群叫数学老师群,在这个群里,他们做了许多探讨。他的4m阶幻方的构造方法,用几句话就概括了,主体思想是两次倒写。由于简单,才引起高老师编程的信心。
a(i - 1, j - 1) = n * (i - 1) + jCells(i + 3, j + 3) = n * (i - 1) + jFor m = 1 + n / 4 To n / 2 + n / 4Cells(m + 3, k + 3) = n ^ 2 + 1 - (n * (m - 1) + k)a(m - 1, k - 1) = n ^ 2 + 1 - (n * (m - 1) + k)For t = 1 + n / 4 To n / 2 + n / 4Cells(s + 3, t + 3) = a(n - s, n - t)在中国幻方研究者协会的各期幻方专辑里,也有一些幻方程序,主要是湖北蓸陵老师搞的vb6程序,由于界面的问题,能够构造一些低阶幻方。
在湖北孝感市工业学校任教数学,高级讲师,兼任省中专数学教学研究会常务理事。1965年初中毕业后以知青下乡插队,耕耘九载;1974年上调进厂,先后为船员、装 卸、电工;78年参加高考,录中镇江师专,转入教育界,后在湖北大学完成数学本科。崇尚 民主科技,爱好文史诗词,曾自作《岁月诗痕》一册,现醉心于电脑操作与办公自动化。教 学之余,潜心于数学基础理论的研究,多次参与中专教材及学习指导的编审工作。有论文《 隐函数XY=ex+y的作图》刊登在1992年《中专数学》第四期上。近年与镇江同学臧正松联手摸 索“分组问题”,大有进展,已撰写出系列论文。其首篇《球盒问题的最终解决》发表在华 中师范大学主办的《高等函授学报》1998年第四期上,1999年撰写专著《再论幻方》,五讲八万余字及VB制作程序,多有创新理论提高!部分章节发表在《延安教育学院学报》上。
下面的程序是根据蓸陵老师的程序改编的,可以在电子表格中闪电般地呈现出来。
u = 1: v = 0 '预置转向步(u, v)i = 1: j = b '跳跃起点C(i, j)If n Mod 3 = 0 Then p = 1Cells(i + 3, j + 3) = 1 '开始数If i < 1 Then i = i + n '界外复位Cells(i + 3, j + 3) = t '幻方数组在幻方构造中,单偶阶幻方是最难构造的,故所编的VB程序也是最复杂的。4m+2阶幻方使用了山西李宏晋老师的对角线对调方法,但是构造过程中,高老师遇到许多困难,由于参数选择不当,开始的程序得到的幻方列和不相等的,后来他参考了贵州施学良书籍中的三向异位法,首先对主对角线对调,然后在进行上下左右对调,才获得成功。山西李宏晋老师说,采取不同的对调方式,会得到不同的幻方,所以此程序再作探讨后,是可以改进的。
a(i - 1, j - 1) = n * (i - 1) + jCells(i + 3, j + 3) = n * (i - 1) + j Cells(k + 3, k + 3) = a(n - k, n - k) '对角线对调 Cells(n - k + 4, n - k + 4) = a(k - 1, k - 1) '主对角线对调 Cells(k + 3, n - k + 4) = a(n - k, k - 1) '上下对调左v Cells(n - k + 4, k + 3) = a(k - 1, n - k) '上下对调左v Cells(k + 3, (m - 2 + k) Mod (n / 2) + 4) = a(k - 1, n - (m - 2 + k) Mod (n / 2) - 1) '左右对调上v Cells(k + 3, n - (k + m - 2) Mod (n / 2) + 3) = a(k - 1, (m - 2 + k) Mod (n / 2)) '左右对调上v Cells(n - k + 4, (m - 2 + k) Mod (n / 2) + 4) = a(n - k, n - (m - 2 + k) Mod (n / 2) - 1) '左右对调下vCells(n - k + 4, n - (m - 2 + k) Mod (n / 2) + 3) = a(n - k, (m - 2 + k) Mod (n / 2)) '左右对调下vFor m = (n + 6) / 4 To (n - 2) / 2Cells(k + 3, (m - 2 + k) Mod (n / 2) + 4) = a(n - k, (m - 2 + k) Mod (n / 2)) '上下对调左v Cells(n - k + 4, (m - 2 + k) Mod (n / 2) + 4) = a(k - 1, (m - 2 + k) Mod (n / 2)) '上下对调左vFor m = (n + 6) / 4 To n / 2 Cells(k + 3, n - (k + m - 2) Mod (n / 2) + 3) = a(n - k, n - (m - 2 + k) Mod (n / 2) - 1) '上下对调右vCells(n - k + 4, n - (m - 2 + k) Mod (n / 2) + 3) = a(k - 1, n - (m - 2 + k) Mod (n / 2) - 1) '上下对调右v高治源老师在1995年写了一本幻方书《奇妙的幻方》,当时在陕西师范大学出版社出版时,出版社看到大量的数据,需要验证各行各列是否相等,因为数据太多,工作量太大,干着急没办法。可是现在,他却能一键验证幻方的结果,不论多少行列,这种验证是一个瞬间的事情。
b = b + Cells(i + m - 1, j + n - 1)c = c + Cells(j + m - 1, i + n - 1) Cells(a + m - 1, n - 1) = Str(a) + '阶幻方' Cells(a + m, n - 1) = '各列和' Cells(a + m, j + n - 1) = b Cells(m - 2, a + n) = Str(a) + '阶幻方' Cells(m - 1, a + n) = '各行和' Cells(j + m - 1, a + n) = c
b = b + Cells(i + m - 1, (j + i - 2) Mod a + n)c = c + Cells(a + m - 1 - (j + i - 2) Mod a, i + n - 1) Cells(a + m + 1, n - 1) = '左对角线的和' Cells(a + m + 1, j + n - 1) = b Cells(m - 1, a + n + 1) = '右对角线的和' Cells(j + m - 1, a + n + 1) = c
本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请
点击举报。