文档库 最新最全的文档下载
当前位置:文档库 › 任意奇数阶幻方的罗伯移步法

任意奇数阶幻方的罗伯移步法

任意奇数阶幻方的罗伯移步法
任意奇数阶幻方的罗伯移步法

任意奇数阶幻方的罗伯移步法

学习心得

范贤荣2016.2.25

在学习幻方构成时,在网上看到了大多数幻友介绍的罗伯(loubere)法。读后,我有心得如下:

1、罗伯(loubere)法的确是最简单的任意奇数阶幻方的构成法。它只要一步一步地填写就可以了。

2、有人称之为楼梯法。这也非常形象,体现了一步一步斜着向上的填写规律。因此,我觉得以罗伯楼梯法谓之,倒是一个好办法,既尊敬了罗伯的创造,又形象地体现了填写规律。但是,楼梯太实用了,就采用了浪漫点的移步二字,编写了本文的题目。

3、罗伯法的填写步骤,非常经典。关于“出格/出框”、“重复/遇阻”的规定,也往往还被其他方法所引用。

4、罗伯法的口诀,对“1居上行正中央”的这种幻方,是很正确且准确的。但是,不知道这是不是罗伯老师的原话。我现在看到的都是幻友们的介绍。因此,就与幻友们讨论一下:

这个口诀,只适用于“1居上行正中央”的这种幻方。或者说“1居上行正中央”的这种幻方,只是罗伯幻方的一种。

罗伯幻方每一阶都有多种。幻方数与阶数相同。

因此,我建议在这口诀下面加一个注:“1居上行正中央”只是罗伯幻方有代表性的一种。1还可以在其他点格上。

5、1还可以在那些点格上呢?

我们把方阵空格用(X,Y)即(行,列)表示。第一行,第三列表示为(1,3)那么,各阶数方阵有几个幻方,1点在何处,可见下表:

我们还可以形象地用方阵的方式,直观地看到1的位置。

5阶幻方的1点在幻和为65的格子内。

方法是:

1)与阶数一样,画出阶数方阵。例如,5阶

2)将该阶幻方的幻和填在方阵的“上行正中央”。例如5阶幻和65。

3)在斜着把幻和,逐行向左移一位,填在各行。如下图

4)再利用罗伯法则,将出格的数移回来。就可以直观地看到1在那些点格了。

5)顺便说说方阵中的其他数据是什么?从何而来?。这些数据都是一个不等于“幻和”的对角线之和。我是计算出来的,计算完5阶,我就知道7阶了。因此,就少画了许多方阵。

6)其他不等于“幻和”的对角线之和,就是将“幻和”向两边逐步加减“阶2”。

例如5阶,52=25 65+25=90、90+25=115、65-25=40、40-25=15

心得汇报完毕。方阵附后:

7阶方阵

幻方的1点在175幻和的格子内

请大家注意图H和图1,可以总结出下面的编排方法:

1、在第一行正中央的方格子中填上1;

2、按斜上方向在1的右上角填入2,但出上框了,这时要把2改填在2所在这一列的最下边;

3、按斜上方向在2的右上角填入3,又出右框了,把3改填在3所在这一行的最左边;(上图1)

4、按斜上方向在3的右上角填入4,但与先填入的1重合了,这时就把4改填在3

的下面,然后把5、6依次按斜上方向填入方格内;

5、按斜上方向在6的右上角填入7,但出框的右上角,这时就把7改填在6的下面,(与重合相同)。重复上面的做法,把8、9依次填入方格中,这样就得到了图1,与左边的图H完全相同。

这种编排奇数阶幻方的方法叫“罗伯法”。

使用“罗伯法”时总是向右上的斜行方向进行编排。编排过程中会出现五种情况:“第一行正中央排什么数?”、“排出上框怎么办?”、“排出右框怎么办?”、“排重复了怎么办?”、“排出右上角怎么办?”

为了便于记忆,我们把罗伯法概括成下面的口诀:

1居上行正中央,

依次斜排且莫忘;

上出框时往下写,

右出框时左边放;

重叠就在下格填,

右上出框也一样。

任意奇数阶幻方的罗伯移步法

任意奇数阶幻方的罗伯移步法 学习心得 范贤荣2016.2.25 在学习幻方构成时,在网上看到了大多数幻友介绍的罗伯(loubere )法。读后,我有心得如下: 1、罗伯(loubere )法的确是最简单的任意奇数阶幻方的构成法。它只要一步一步 地填写就可以了。 2、有人称之为楼梯法。这也非常形象,体现了一步一步斜着向上的填写规律。因 此,我觉得以罗伯楼梯法谓之,倒是一个好办法,既尊敬了罗伯的创造,又形象地体现 了填写规律。但是,楼梯太实用了,就采用了浪漫点的移步二字,编写了本文的题目。 3、罗伯法的填写步骤,非常经典。关于“出格/出框”、“重复/遇阻”的规定,也往往还被其他方法所引用。 4、罗伯法的口诀,对“1 居上行正中央”的这种幻方,是很正确且准确的。但是,不知道这是不是罗伯老师的原话。我现在看到的都是幻友们的介绍。因此,就与幻友们讨 论一下: 这个口诀,只适用于“1 居上行正中央”的这种幻方。或者说“1居上行正中央”的这种幻方,只是罗伯幻方的一种。 罗伯幻方每一阶都有多种。幻方数与阶数相同。 因此,我建议在这口诀下面加一个注:“1 居上行正中央”只是罗伯幻方有代表性的一种。1 还可以在其他点格上。 5、1 还可以在那些点格上呢? 我们把方阵空格用(X,Y)即(行,列)表示。第一行,第三列表示为(1,3)

那么,各阶数方阵有几个幻方, 1 点在何处,可见下表: 我们还可以形象地用方阵的方式,直观地看到 1 的位置。 5 阶幻方的1 点在幻和为65 的格子内。 方法是: 1)与阶数一样,画出阶数方阵。例如, 5 阶 2)将该阶幻方的幻和填在方阵的“上行正中央”。例如5 阶幻和65。 3)在斜着把幻和,逐行向左移一位,填在各行。如下图 4)再利用罗伯法则,将出格的数移回来。就可以直观地看到 1 在那些点格了。5)顺便说说方阵中的其他数据是什么?从何而来?。这些数据都是一个不等于“幻和”的对角线之和。我是计算出来的,计算完5 阶,我就知道7 阶了。因此,就少画了许多方阵。

幻方解法整理归纳

在一个由若干个排列整齐的数组成的正方形中,图中任意一横行、一纵行及对角线的几个数之和都相等,具有这种性质的图表,称为“幻方”。我国古代称为“河图”、“洛书”,又叫“纵横图”。 1、奇数阶幻方——罗伯特法(也有人称之为楼梯法)(如图一:以五阶幻方为例) 奇数阶幻方 n为奇数(n=3,5,7,9,11……) (n=2×k+1,k=1,2,3,4,5……) 奇数阶幻方最经典的填法是罗伯特法(也有人称之为楼梯法)。填写方法是这样: 把1(或最小的数)放在第一行正中;按以下规律排列剩下的n×n-1个数: (1)每一个数放在前一个数的右上一格; (2)如果这个数所要放的格已经超出了顶行那么就把它放在底行,仍然要放在右一列; (3)如果这个数所要放的格已经超出了最右列那么就把它放在最左列,仍然要放在上一行; (4)如果这个数所要放的格已经超出了顶行且超出了最右列,那么就把它放在前一个数的下一行同一列的格内; (5)如果这个数所要放的格已经有数填入,处理方法同(4)。 这种写法总是先向“右上”的方向,象是在爬楼梯。 口诀: 1居首行正中央, 依次右上莫相忘 上出格时往下放, 右出格时往左放. 排重便往自下放, 右上出格一个样 图一 2、单偶数阶幻方 ()1 2 2+ =m n ——分区调换法(如图二:以六阶幻方为例) ①把()1 2 2+ =m n阶的幻方均分成4个同样的小幻方A、B、C、D(如图二) 图二

(注意A 、B 、C 、D 的相对位置不能改变,因为12+m 为奇数,所以A 、B 、C 、D 均为奇数阶幻方) ② 用连续摆数法在A 中填入21a ——构成幻方,同理,在B 中填入()2221a a ——+、在C 中填入()22312a a ——+、在D 中填入()22413a a ——+均构成幻方(2n a =)(如图三) 图三 (因为12+m 为奇数,所以A 、B 、C 、D 均为奇数阶幻方,必然可以用连续摆数法构造幻方) ③ 在A 的中间一行上从左侧的第二列起取m 个方格,在其它行上则从左侧第一列起取m 个方格,把这些方格中的数与D 中相应方格中的数字对调(如图四): 图四 不管是几阶幻方,在A 中取数时都要从中间一行的左侧第二列开始;因为当6=n 时,1=m ,所以本例中只取了一个数) ④ 在A 中从最右一列起在各行中取1-m 个方格,把这些方格中的数与D 中相应方格中的数字对调。(如图五) 图五 3、双偶数阶幻方m n 4=——轴对称法(如图三:以八阶幻方为例) ① 把m n 4=阶的幻方均分成4个同样的小幻方(如图六) 图六

简单易学的两种还原魔方的口诀及公式图解详解

图解简单易学的两种还原魔方的常用口诀公式 前言 我们常见的魔方是3x3x3的三阶魔方,英文名Rubik's cube。是一个正6 面体,有6种颜色,由26块组成,有8个角块;12个棱块;6个中心块(和中心轴支架相连)见下图: (图1) 学习魔方首先就要搞清它的以上结构,知道角块只能和角块换位,棱块只能和棱块换位,中心块不能移动。 魔方的标准色: 国际魔方标准色为:上黄-下白,前蓝-后绿,左橙-右红。 (见图2)注:(这里以白色为底面,因为以后的教程都将以白色为底面, 为了方便教学,请都统一以白色为准)。 (图 2)

认识公式 (图3)(图4)公式说明:实际上就是以上下左右前后的英文的单词的头一个大写字母表示 (图5)

(图6) (图7)

(图8) 三阶魔方入门玩法教程(一) 步骤一、完成一层 首先要做的是区分一层和一面:很多初学者对于“一面”与“一层”缺乏清楚的认识,所以在这里特别解释一下。所谓一层,就是在完成一面(如图2的白色面)的基础上,白色面的四条边,每条边的侧面只有一种颜色,图(2). 如图(1)中心块是蓝色,则它所在面的角和棱全都是蓝色,是图(2)的反方向 图(3)和(4)则是仅仅是一面的状态,而不是一层! (1)(2) (3)(4) 注:图(2)和(4)分别是图(1)和(3)的底面状态 想完成魔方,基础是最重要的,就像建筑一样,魔方也如此,基础是最重要的。

由于上文提到过中心块的固定性,这一性质,在魔方上实质起着定位的作用,简单的说就是中心块的颜色就代表它所在的面的颜色。 一、十字(就是快速法中的CROSS ) 第一种情况如图所示: 公式为R2 第二种情况如图所示: (白色下面颜色为橙色,为方便观察,特意翻出颜色) 橙白块要移到上右的位置,现在橙白块在目标位置的下面。但其橙色片没有和橙色的中心块贴在 一起。为此我们先做D’ F’ 即把橙色粘在一起,接着 R 还原到顶层,, F 是把蓝白橙还原到正确的位置(上面的F’ 使蓝白块向左移了九十度)。 公式为D’ F’ R F 图解: 当然,架十字不只只有上面两种情况,现我们在分析下其它的一些情况吧! 如下图: 橙白块的位置己对好,但颜色反了,我就先做R2化成第二种情况,然后用还原第二种情况的 (橙色下面颜色为白色,为方便观察,特意翻出颜色)

(完整版)任意奇数阶幻方的杨辉斜排法

任意奇数阶幻方的杨辉斜排法 ——对杨辉口诀的讨论 范贤荣2016.3.8 关于三阶幻方的排法,我国古代数学家杨辉给出了一个巧妙的排法:“九子斜排,上下对易,左右相更,四维挺出”。按照这个口诀,画出“上下对易,左右相更”之后,形成图1d的图面。因此,必定有一个“四维挺出”的步骤。最后得到“戴九履一,左三右七,二四為肩,六八為足”的三阶幻方。见图1。 图1 杨辉口诀的画法 可见,杨辉口诀是在利用5×5的方格,斜排9个数后,按照他的步骤,仍然是画出5×5方格的3阶的幻方,如图1e。 图2 菱中取方的画法 现在,我们很多人用的是“取方框”画法。即在5×5的方阵中,取出3×3方框来,如图2b的红框。红框外的1,是走到框内的绿方块中,红框外的9,是走到框内的蓝方块中。因此1、9没有“对易”。同样,3、7也没有“相更”。因此,就没有“上下对易,左右相更”了。所以,就不需要“四维挺出”了。因此,现在的画法,与原来的口诀不一致了。 所以,我根据作图的次序,将杨辉的口诀,演绎成: 各子斜排为菱形,中间取方当作城, 城外有子城内空,四围都往城中进。 挺进多少方可止,几阶就挺几步深。 注1:“四围”就是上下左右四边。“都往城中进”,因此是相向而行,都到城中。 注2:“几阶就挺几步深”。如3阶进3步,5阶进5步,7阶进7步……后续亦如此类推。见图2。

下面,我将2~13各奇数阶,由菱方阵演变成幻方的情况,列于后。 图3 5阶菱方阵与幻方 图4 7阶菱方阵与幻方

图5 9阶菱方阵与幻方 图6 11阶菱方阵与幻方

图7 11阶幻方 图8 13阶菱方阵

图9 13阶幻方

幻方填入规律

n是它的阶数,比如上面的幻方是3阶。n/2*(n*n+1)为幻方的变幻常数。数学上已经证明,对于n>2,n阶幻方都存在。目前填写幻方的方法,是把幻方分成了三类,每类又有各种各样的填写方法。这里对于这三类幻方,仅举出一种方便手工填写的方法。 1、奇数阶幻方 n为奇数(n=3,5,7,9,11……) (n=2*k+1,k=1,2,3,4,5……) 奇数阶幻方最经典的填法是罗伯特法(也有人称之为楼梯法)。填写方法是这样:把1(或最小的数)放在第一行正中;按以下规律排列剩下的n*n-1个数:(1)、每一个数放在前一个数的右上一格;(2)、如果这个数所要放的格已经超出了顶行那么就把它放在底行,仍然要放在右一列;(3)、如果这个数所要放的格已经超出了最右列那么就把它放在最左列,仍然要放在上一行;(4)、如果这个数所要放的格已经超出了顶行且超出了最右列,那么就把它放在前一个数的下一行同一列的格内;(5)、如果这个数所要放的格已经有数填入,处理方法同(4)。这种写法总是先向“右上”的方向,象是在爬楼梯。 2、双偶阶幻方

方阵 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 (2) 每个小方阵对角线上的数字,换成和它互补的数。 单偶阶幻方 n为偶数,且不能被4整除(n=6,10,14,18,22……) (n=4k+2,k=1,2,3,4,5……) 这是三种里面最复杂的幻方。 以n=10为例。这时,k=2 (1) 把方阵分为A,B,C,D四个象限,这样每一个象限肯定是奇数阶。用楼梯法,依次在A象限,D象限,B象限,C象限按奇数阶幻方的填法填数。

三阶魔方公式口诀图解(新手快速入门)

三阶魔方公式口诀图解(新 手快速入门) 集团文件发布号:(9816-UATWW-MWUB-WUNN-INNUL-DQQTY-

三阶魔方玩法与口诀 目录 一、前言 ________________________________________________ - 2 - 二、认识公式 ____________________________________________ - 2 - 三、拧魔方的步骤与口诀___________________________________ - 4 - 步骤一、完成一层 ______________________________________ - 4 - (一)完成第一层十字 _______________________________ - 4 - (二)完成第一层角块 _______________________________ - 5 - 步骤二、完成第二层 ____________________________________ - 6 - 步骤三、完成顶层 ______________________________________ - 8 - (一)顶层十字 _____________________________________ - 8 - (二)顶层平面 _____________________________________ - 9 - (三)顶层角块 ____________________________________ - 10 - (四)顶层棱块 ____________________________________ - 11 -

数据结构 第5章 魔方阵

数据结构 实验报告第五章 实验名称:魔方阵 实验类型:设计性实验 班级: 学号: 姓名: 实验日期:2014年6月7日 1.问题描述 魔方阵是一个古老的智力问题,它要求在一个m×m的矩阵中填入1~m2的数字(m为奇数),使得每一行、每一列、每条对角线的累加和都相等,如图1所示。 基本要求 ●输入魔方阵的行数m,要求m为奇数,程序对所输入的m作简单的判 断,如m有错,能给出适当的提示信息。 ●实现魔方阵。 ●输出魔方阵。 2.数据结构设计 这个问题的数据结构使用数组就可以解决。 3.算法设计 ●由1开始填数,将1放在第0行的中间位置。 ●将魔方阵想象成上下、左右相接,每次往左上角走一步,会有下列情况: ?左上角超出上方边界,则在最下边相对应的位置填入下一个数字; ?左上角超出左边边界,则在最右边相应的位置填入下一个数字; ?如果按上述方法找到的位置已填入数据,则在同一列下一行填入下 一个数字。 以3×3魔方阵为例,说明其填数过程,如图2所示。

图2 三阶魔方阵的生成过程 由三阶魔方阵的生成过程可知,某一位置(x,y)的左上角的位置是(x-1,y-1),如果x-1≥0,不用调整,否则将其调整为x-1+m;同理,如果y-1≥0,不用调整,否则将其调整为y-1+m。所以,位置(x,y)的左上角的位置可以用求模的方法获得,即: x=(x-1+m)%m y=(y-1+m)%m 如果所求的位置已经有数据了,将该数据填入同一列下一行的位置。这里需要注意的是。此时的x和y已经变成之前的上一行上一列了,如果想变回之前位置的下一行同一列,x需要跨越两行,y需要跨越一列,即: x=(x+2)%m y=(y+1)%m 4.运行、测试与分析 (1)程序开始运行并输入。 (2)输出结果。 (3)容错检验。

幻方常规解法汇总

幻方常规解法汇总 没法,组合数学还考幻方构造。这东西不看解法真不会写,虽然没见有啥用,但还是记录下,免得日后再找。按目前填写幻方的方法,是把幻方分成了三类,即奇数阶幻方、双偶阶幻方、单偶阶幻方。下面按这三类幻方,列出最常用解法(考试用,不求强大,只求有效!)。 奇数阶幻方(罗伯法) 奇数阶幻方最经典的填法是罗伯法。填写的方法是: 把1(或最小的数)放在第一行正中;按以下规律排列剩下的(n×n-1)个数: 1、每一个数放在前一个数的右上一格; 2、如果这个数所要放的格已经超出了顶行那么就把它放在底行,仍然要放在右一列; 3、如果这个数所要放的格已经超出了最右列那么就把它放在最左列,仍然要放在上一行; 4、如果这个数所要放的格已经超出了顶行且超出了最右列,那么就把它放在前一个数的下一行同一列的格内; 5、如果这个数所要放的格已经有数填入,那么就把它放在前一个数的下一行同一列的格内。 例,用该填法获得的5阶幻方: 双偶数阶幻方(对称交换法) 所谓双偶阶幻方就是当n可以被4整除时的偶阶幻方,即4K阶幻方。在说解法之前我们先说明一个“互补数”定义:就是在n 阶幻方中,如果两个数的和等于幻方中最大的数与 1 的和(即n×n+1),我们称它们为一对互补数。如在三阶幻方中,每一对和为10 的数,是一对互补数;在四阶幻方中,每一对和为17 的数,是一对互补数。 双偶数阶幻方的对称交换解法: 先看看4阶幻方的填法:将数字从左到右、从上到下按顺序填写: 内外四个角对角上互补的数相易,(方阵分为两个正方形,外大内小,然后把大正方形的四个对角上的数字对换,小正方形四个对角上的数字对换)即(16,11)(7,10)互换即可。 对于n=4k阶幻方,我们先把数字按顺序填写。写好后,按4×4把它划分成k×k个方阵。因为n是4的倍数,一定能用4×4的小方阵分割。然后把每个小方阵的对角线,象制作4阶幻方的方法一样,对角线上的数字换成互补的数字,就构成幻方。 以8阶幻方为例: (1) 先把数字按顺序填。然后,按

幻方最优填法

如何填幻方 幻方最早记载于我国公元前500年的春秋时期《大戴礼》中,这说明我国人民早在2500年前就已经知道了幻方的排列规律。而在国外,公元130年,希腊人塞翁才第一次提起幻方。我国不仅拥用幻方的发明权,而且是对幻方进行深入研究的国家。公元13世纪的数学家杨辉已经编制出3-10阶幻方,记载在他1275年写的《续古摘厅算法》一书中。在欧洲,直到574年,德国著名画家丢功才绘制出了完整的4阶幻方。 数学上已经证明,对于n>2,n阶幻方都存在。目前填写幻方的方法,是把幻方分成了三类,每类又有各种各样的填写方法。 1、奇数阶幻方 n为奇数(n=3,5,7,9,11……) (n=2×k+1,k=1,2,3,4,5……) 奇数阶幻方最经典的填法是罗伯特法(也有人称之为楼梯法)。填写方法是这样: 把1(或最小的数)放在第一行正中;按以下规律排列剩下的n×n-1个数: (1)每一个数放在前一个数的右上一格; (2)如果这个数所要放的格已经超出了顶行那么就把它放在底行,仍然要放在右一列; (3)如果这个数所要放的格已经超出了最右列那么就把它放在最左列,仍然要放在上一行; (4)如果这个数所要放的格已经超出了顶行且超出了最右列,那么就把它放在前一个数的下一行同一列的格内; (5)如果这个数所要放的格已经有数填入,处理方法同(4)。 这种写法总是先向“右上”的方向,象是在爬楼梯。 2、双偶阶幻方 n为偶数,且能被4整除(n=4,8,12,16,20……) (n=4k,k=1,2,3,4,5……) 先说明一个定义。互补:如果两个数字的和,等于幻方最大数和最小数的和,即n*n+1,称为互补。 先看看4阶幻方的填法:将数字从左到右、从上到下按顺序填写: 这个方阵的对角线,已经用颜色标出。将对角线上的数字,换成与它互补(同色)的数字。这里,n×n+1 = 4×4+1 = 17;把1换成17-1 = 16;把6换成17-6 = 11;把11换成17-11 = 6……换完后就是一个四阶幻方。 也可以保留对角线上的数字不动,而将其它的数换为与它互补的数。 对于n=4k阶幻方,我们先把数字按顺序填写。写好后,按4*4把它划分成k2个方阵。因为n是4的倍数,一定能用4*4的小方阵分割。然后把每个小方阵的对角线,象制作4阶幻方的方法一样,对角线上的数字换成互补的数字,就构成幻方。 1 63 6 2 4 5 59 58 8 56 10 11 53 52 14 15 49 48 18 19 45 44 22 23 41 25 39 38 28 29 35 34 32 33 31 30 36 37 27 26 40 24 42 43 21 20 46 47 17 16 50 51 13 12 54 55 9 57 7 6 60 61 3 2 64

三阶魔方公式口诀图解

三阶魔方玩法与口诀 目录 一、前言_____________________________________ 错误!未定义书签。 二、认识公式 _________________________________ 错误!未定义书签。 三、拧魔方的步骤与口诀 _______________________ 错误!未定义书签。 步骤一、完成一层___________________________ 错误!未定义书签。 (一)完成第一层十字____________________ 错误!未定义书签。 (二)完成第一层角块____________________ 错误!未定义书签。 步骤二、完成第二层_________________________ 错误!未定义书签。 步骤三、完成顶层___________________________ 错误!未定义书签。 (一)顶层十字__________________________ 错误!未定义书签。 (二)顶层平面__________________________ 错误!未定义书签。 (三)顶层角块__________________________ 错误!未定义书签。 (四)顶层棱块__________________________ 错误!未定义书签。 一、前言 魔方是3x3x3的三阶魔方,英文名Rubik's cube。是一个正 6 面体,有6种颜色,由26块组成,有8个角块;12个棱块;6个中心块(和中心轴支架相连)见下图: 学习魔方首先就要搞清它的以上结构,知道角块只能和角块换位,棱块只能和棱块换位,中心块不能移动。 魔方的标准色: 国际魔方标准色为:上黄-下白,前蓝-后绿,左橙-右红。 二、认识公式 公式说明:实际上就是以上下左右前后的英文的单词的头一个大写字母表示

偶数阶幻方

偶数阶幻方的一种制作方法-双偶阶、单偶阶幻方 1. 双偶阶幻方(对称交换法) n为偶数,且能被4整除(n=4,8,12,16,20……) (n=4k,k=1,2,3,4,5……) 先说明一个定义。互补:如果两个数字的和,等于幻方最大数和最小数的和,即 n×n+1,称为互补。 先看看4阶幻方的填法:将数字从左到右、从上到下按顺序填写: 这个方阵的对角线,已经用颜色标出。将对角线上的数字,换成与它互补(同色)的数字。 这里,n×n+1 = 4×4+1 = 17;把1换成17-1 = 16;把6换成17-6 = 11;把11换成17-11 = 6……换完后就是一个四阶幻方。 对于n=4k阶幻方,我们先把数字按顺序填写。写好后,按4×4把它划分成k×k个方阵。因为n是4的倍数,一定能用4×4的小方阵分割。然后把每个小方阵的对角线,象制作4阶幻方的方法一样,对角线上的数字换成互补的数字,就构成幻方。

2. 单偶阶幻方(斯特雷奇Ralph Strachey法) n为偶数,且不能被4整除(n=6,10,14,18,22……) (n=4k+2,k=1,2,3,4,5……) 这是三种里面最复杂的幻方。 以n=10为例,10=4×2+2,这时k=2 (1)把方阵分为A,B,C,D四个象限,这样每一个象限肯定是奇数阶。用楼梯法,依次在A象限,D象限,B象限,C象限按奇数阶幻方的填法填数。

(2)在A象限的中间行、中间格开始,按自左向右的方向,标出k 格。A象限的其它行则标出最左边的k格。将这些格,和C象限相对位置上的数,互换位置。

(3)在B象限任一行的中间格,自右向左,标出k-1列。(注:6阶幻方由于k-1=0,所以不用再作B、D象限的数据交换),将B象限标出的这

数阶幻方的

数阶幻方的编排方法. 奇数阶幻方的编排方法 简便易学的编排方法。 一、九子排列法 宋朝数学家杨辉在《续古摘奇算法》中,总结“洛书”幻方的编排方法时说:三阶幻方的编排方法是“九子排列,上下对易,左右相更,四维挺出”。 这四个句子是什么意思呢?我们通过下面的一组图来加以理解。

先画出一个3×3的“九宫格”,并在第二列上、下方和第二行左、右边各添加一个虚线格子,把1~9这九个数字按顺序写在如上图所示的三排斜线上,然后上、下对调,左右交换,(因为我们是在格子上进行排列,就不必再进行“四维挺出”了),最后将虚线格子擦掉就可以了。 利用这种方法我们就很容易得到幻方(一)中例1的图A。但是这种方法有一定的局限性,只能编排三阶幻方,如果要编排5×5,7×7,9×9,……等奇数阶幻方又该怎么办呢?我们继续看第二种方法。 二、罗伯法 请大家注意观察幻方(一)中例1的图H,可以总结出下面的编排方法:

1、在第一行正中央的方格子中填上1; 2、按斜上方向在1的右上角填入2,但出上框了,这时要把2改填在2所在这一列的最下边; 3、按斜上方向在2的右上角填入3,又出右框了,把3改填在3所在这一行的最左边;(上图1) 4、按斜上方向在3的右上角填入4,但与先填入的1重合了,这时就把4改填在3的下面,然后把 5、6依次按斜上方向填入方格内; 5、按斜上方向在6的右上角填入7,但出框的右上角,这时就把7改填在6的下面,(与重合相同)。 重复上面的做法,把8、9依次填入方格中,这样就得到了图2,与左边的图H 完全相同。 这种编排奇数阶幻方的方法叫“罗伯法”。使用“罗伯法”时总是向右上的斜行方向进行编排。编排过程中会出现五种情况:“第一行正中央排什么数?”、“排出上框怎么办?”、“排出右框怎么办?”、“排重复了怎么办?”、“排出右上角怎么办?” 为了便于记忆,我们把罗伯法概括成下面的的几句话: 1居上行正中央,依次斜排莫忘记;上出框时往下写,右出框时左边放;重叠就在下格填,右上出框一个样。 罗伯法不仅可以编排三阶幻方,而且可以编排任何奇数阶幻方。下图就是用罗伯法编排的五阶幻方,请大家在方格子中跟着做一、二次,并逐行、逐列及对角线检验幻和是否正确。 三、巴舍法

数阶幻方的编排方法

精心整理 奇数阶幻方的编排方法 简便易学的编排方法。 一、九子排列法 宋朝数学家杨辉在《续古摘奇算法》中,总结“洛书”幻方的编排方法时说:三阶幻方的编排方法是“九子排列,上下对易,左右相更,四维挺出”。 这四个句子是什么意思呢?我们通过下面的一组图来加以理解。 先画出一个3×3的“九宫格”,并在第二列上、下方和第二行左、右边各添加一个虚线格子,把1~9这九个数字按顺序写在如上图所示的三排斜线上,然后上、下对调,左右交换,(因为我 1 2 3 图1) 4 然后把5 5 1 下面以五阶幻方为例,再介绍一种奇数阶幻方的编排方法。步骤如下: ①先画出一个5×5(五行五列)的方格,在方格的四周画出凸阶梯式的虚线方格(如下图1) ②把1~25这二十五个数按斜行方向从左到右依次填入图中(如上图2); ③以3、15、23、11四个数为顶点(实际上就是五阶幻方的四个顶点)画出一个正方形; ④把正方形外面凸出的虚线方格中的数按“上移下,下移上;左移右,右移左”的方法,全部平移5格到对应部分的方格中,擦掉虚线格子,就得到一个五阶幻方(见下图)。 这种编排幻方的方法叫“巴舍法”,也叫平移补空法,它和“罗伯法”一样,也适用于一切的奇数阶幻方的编排。 需要提醒大家注意的是,在步骤②中,填写1~25这二十五个数时,可以从左向右上填写,也可以从右向左上填写,或者从上向右下填写,还可以从上向左下填写,其移动后的结果都是一个五阶幻方,同学们可以自己动手试一试。

另外,编排n 阶幻方时,不一定非要从1开始,只要是这些数能构成等差数列就可以了。 练习(一定要完成的哦) 1、使用“罗伯法”将4~12编排一个三阶幻方。 2、用“罗伯法”将21、31、32、41、4 3、61、121、125、12 7编成一个三阶幻方。 3、使用“巴舍法”将1~49编排一个七阶幻方。 双偶数阶幻方的编排方法 一、中心对称交换法 例1、用1~16这十六个数编排一个四阶幻方(四行四列)。 【分析与解答】用1至16编排一个四阶幻方,就是把1~16这十六个数填入四行四列的方格 34。 是3412+16=40(即2与3,+14+16=58(即8与12例如2又如,9称交换就可以直接得到四阶幻方,把这种编排双偶数阶幻方的办法叫“中心对称交换法”。 由例1可以看到,用“中心对称交换法”编排四阶幻方的主要步骤归纳如下: ①把1~16按顺序排成四阶自然方阵; ②四阶自然方阵中对角线上的八个数不动,作为四阶幻方两条对角线上的数; ③把四阶自然方阵中对角线以外的数作中心对称交换。 运用“中心对称交换法”不仅可以编排四阶幻方,而且可以编排任意的双偶数阶幻方。 例2、用1~64这六十四个数编排一个八阶幻方(八行八列)。 【分析与解答】编排步骤如下: ①把1至64按顺序填入8×8的方格子中,排成八阶自然方阵;(见左下图) ②把八阶自然方阵分成四个四阶自然方阵(左下图粗线条),每个四阶自然方阵分别画出对角

三阶魔方公式口诀图解简版

步骤一、完成一层 (一)完成第一层十字 第一种情况如图所示:公式为R2 第二种情况如图所示:公式为D’F’R F 其它的一些情况 先做R2化成第二种情况,然后用第二种情况公式 前右要移到上后。R’D’ R D2。两种情况分别化为上面第一、二种情况。 如果刚开始时橙白块也还没对好,直接R’ D移到后下! (二)完成第一层角块 依然把十字放在顶层,还原角块时,我们首先在底层找有没有我们要还原的角,没有的话再到顶层去找!基本的两种情况为: 公式:D’R’ D R公式:R’D’ R 白色在底面!先做R’ D或D2 R就是上面第二种情况了! 最后还有两种情况,角块的位置已经对好,但颜色没对好,如下图::先做R’ D R化成第一种情况。 :先做R’D’R D化成第二种情况即可! 步骤二、完成第二层 开始还原第二层,把魔方倒过来,把做好的第一层放到底层 首先在顶层找有哪些块是可还原的。在顶层见到没有黄色的棱块均是要还原到第二层的。只有两种情况而已。 y’ R U R U R U' R' U' R' U’五顺五逆 R' U' R' U' R' U R U R U 五逆五顺 还有的情况就是位置正确但颜色没对好,或者已经在第二层但位置不对。先从顶层随便找个块“还原”到前右的位置 步骤三、完成顶层 (一)顶层十字 完成第二层后顶层会有以下三种情况:

针对上述三种情况,我们只需记住一个公式即:MUMUMUUM’UM’UM’UU:上顺上顺上顺顺下顺下顺下顺顺 我们最终的目的是使得顶面变成这样,如果你的魔方顶面已经是这样了,那这一步就可以直接跳过 状态1公式 状态2RB—公式—B’R’ 状态3公式整体转动魔方公式 (二)顶层平面 顶层拧完十字以后,只需学习以下两种左右公式: 第一种公式(左手公式): 经过公式L’U’LU’L’ U2L(上逆下逆上顺顺下)就变为第二种公式(右手公式): 经过公式RUR’URU2R’(上顺下顺上顺顺下)就变为7种情况 第一种:左手公式 第二种:右手公式 第三种:左手公式左手公式

(纯c语言运行通过)任意阶魔阵算法及规律

任意阶魔方阵算法 20012-05-30 22:51:00| 分类:魔阶作者:王狼杰 我一直就对魔方阵很感兴趣,特别是知道了奇数阶魔方阵的罗伯特算法后,就特别想知道偶数阶魔方阵应有什么算法。当时书上说偶数阶魔方阵比较复杂。都没有什么说明。因此这个问题一直搁在我心里很久,已差不多快忘记了。今天突然又想到了这个问题。于是我开始在网上搜寻,看能不能找到什么好的算法。记得在高中的时候,我就做过魔方阵,当时我从三阶一直做到过八阶方阵,不过用的是人工的方法。到大学的时候我知道了罗伯特算法后,我就用程序将算法写了出来。于是我今天准备把偶数阶的魔方阵也写出来。在网上终于找到了一个比较好的算法。将该算法用C写了出来。供大家分亨。 1、奇数阶幻方 n为奇数(n=3,5,7,9,11……) (n=2*k+1,k=1,2,3,4,5……) 奇数阶幻方最经典的填法是罗伯特法(也有人称之为楼梯方)。填写方法是这样: 把1(或最小的数)放在第一行正中;按以下规律排列剩下的n*n-1个数: (1)、每一个数放在前一个数的右上一格; (2)、如果这个数所要放的格已经超出了顶行那么就把它放在底行,仍然要放在右一列; (3)、如果这个数所要放的格已经超出了最右列那么就把它放在最左列,仍然要放在上一行; (4)、如果这个数所要放的格已经超出了顶行且超出了最右列,那么就把它放在前一个数的下一行同一列的格内; (5)、如果这个数所要放的格已经有数填入,处理方法同(4)。 这种写法总是先向“右上”的方向,象是在爬楼梯。

2、双偶阶幻方 n为偶数,且能被4整除(n=4,8,12,16,20……) (n=4k,k=1,2,3,4,5……) 先说明一个定义: 互补:如果两个数字的和,等于幻方最大数和最小数的和,即n*n+1,称为互补。 先看看4阶幻方的填法:将数字从左到右、从上到下按顺序填写: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 这个方阵的对角线,已经用蓝色标出。将对角线上的数字,换成与它互补的数字。 这里,n*n+1 = 4*4+1 = 17; 把1换成17-1 = 16;把6换成17-6 = 11;把11换成17-11 = 6……换完后就是一个四阶幻方。 16 2 3 13 5 11 10 8 9 7 6 12 4 14 1 5 1 对于n=4k阶幻方,我们先把数字按顺序填写。写好后,按4*4把它划分成k*k个方阵。因为n是4的倍数,一定能用4*4的小方阵分割。然后把每个小方阵的对角线,象制作4阶幻方的方法一样,对角线上的数字换成互补的数字,就构成幻方。下面是8阶幻方的作法:(1) 先把数字按顺序填。然后,按4*4把它分割成2*2个小方阵 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16

c语言奇数魔方阵

魔方阵,古代又称“纵横图”,是指组成元素为自然数1、2…n的平方的n×n 的方阵,其中每个元素值都不相等,且每行、每列以及主、副对角线上各n个元素之和都相等。 如3×3的魔方阵: 8 1 6 =15 3 5 7 =15 4 9 2 =15 || || || 15 15 15 15(对角线) 魔方阵的排列规律(奇数阵): 1.将1放在第一行中间一列。 2.从2开始直到n×n止各数依次按下列规则存放:每一个数存放的行比前一个数的行数减1,列数加1。 3.如果上一个数的行数为1,则下一个数的行数为n,列数加1。如果上一个数的列数的n时,下一个数的列数为1,行数减1。 4.如果按上面的规则确定的位置上已有数,或上一个数是第一行第n列时,则把下一个数放在上一个数的下面。 #include main() { int a[16][16],i,j,k,p,n; p=1; while(p==1) /*要求阶数为1~15的奇数*/ { printf("Enter n(n=1~15):"); scanf("%d",&n); if((n!=0)&&(n<=15)&&(n%2!=0)) p=0; } for(i=1;i<=n;i++) /*初始化*/ for(j=1;j<=n;j++) a[i][j]=0; j=n/2+1; /*建立魔方阵*/ a[1][j]=1; i=1; for(k=2;k<=n*n;k++) { i=i-1;

j=j+1; if((i<1)&&(j>n)) /*上一个数是第一行第n列时,则把下一个数放在上一个数的下面*/ { i=i+2; j=j-1; } else { if(i<1) i=n; /*上一个数的行数为1,则下一个数的行数为n,上一个数的列数的n时,下一个数的列数为1*/ if(j>n) j=1; } if(a[i][j]==0) a[i][j]=k; else { i=i+2; /*如果按上面的规则确定的位置上已有数,则把下一个数放在上一个数的下面*/ j=j-1; a[i][j]=k; } } for(i=1;i<=n;i++) /*输出魔方阵*/ { for(j=1;j<=n;j++) printf("%4d",a[i][j]); printf("\n"); } } n=5:

小学思维数学讲义:幻方(一)-带详解

幻方(一) 1. 会用罗伯法填奇数阶幻方 2. 了解偶数阶幻方相关知识点 3. 深入学习三阶幻方 一、幻方起源 也叫纵横图,也就是把数字纵横排列成正方形,因此纵横图又叫幻方.幻方起源于我国,古人还为它编撰了一些神话.传说在大禹治水的年代,陕西的洛水经常大肆泛滥,无论怎样祭祀河神都无济于事,每年人们摆好祭品之后,河中都会爬出一只大乌龟,乌龟壳有九大块,横着数是3行,竖着数是3列,每块乌龟壳上都有几个点点,正好凑成1至9的数字,可是谁也弄不清这些小点点是什么意思.一次,大乌龟又从河里爬上来,一个看热闹的小孩惊叫起来:“瞧多有趣啊,这些点点不论横着加、竖着加还是斜着加,结果都等于十五!”于是人们赶紧把十五份祭品献给河神,说来也怪,河水果然从此不再泛滥了.这个神奇的图案叫做“幻方”,由于它有3行3列,所以叫做“三阶幻方”,这个相等的和叫做“幻和”.“洛书”就是幻和为15的三阶幻方.如下图: 98 76 54321 我国北周时期的数学家甄鸾在《算数记遗》里有一段注解:“九宫者,二四为肩,六八为足,左三右七,戴九履一,五居中央.”这段文字说明了九个数字的排列情况,可见幻方在我国历史悠久.三阶幻方又叫做九宫图,九宫图的幻方民间歌谣是这样的:“四海三山八仙洞,九龙五子一枝连;二七六郎赏月半,周围十五月团圆.”幻方的种类还很多,这节课我们将学习认识了解它们. 二、幻方定义 幻方是指横行、竖列、对角线上数的和都相等的数的方阵,具有这一性质的33?的数阵称作三阶幻方,44?的数阵称作四阶幻方,55?的称作五阶幻方……如图为三阶幻方、四阶幻方的标准式样, 9 87654 32 1 13 414151 6 1297 8 105113 2 16 三、解决这幻方常用的方法 ⑴适用于所有奇数阶幻方的填法有罗伯法.口诀是:一居上行正中央,后数依次右上连.上出框时往下填,右出框时往左填.排重便在下格填,右上排重一个样. ⑵适用于三阶幻方的三大法则有: ①求幻和: 所有数的和÷行数(或列数) ②求中心数:我们把幻方中对角线交点的数叫“中心数”,中心数=幻和÷3. ③角上的数=与它不同行、不同列、不同对角线的两数和÷2. 四、数独 知识点拨 教学目标

双偶数阶幻方的 V字型对称交换法

双偶数阶幻方的V字型中心对称交换法 范贤荣2016.5.30 所谓双偶数(即4m式)幻方,就是阶数N能被4整除的幻方,比如4阶、8阶、12阶……。下面介绍的V字型中心对称交换法,适用于所有4m式偶阶幻方。 V字型中心对称交换法有两种具体的填写法 一是:V区内数字的中心对称交换,二是:V区外数字的中心对称交换 一、V区内数字的中心对称交换 该法的步骤是: 第一步,把双偶数这些数字按照顺序填写在N×N的表格中。 第二步,把这个表格平均分成四个小方阵。 第三步,选取方阵的上部二小方阵的V形两对角线及其与它们相间隔又平行的那些数,组成V区内数字。 第四步,将这些V区内数字与方阵的下部中心对称的那些数,进行交换。交换完毕,幻方即成。 例如:4阶幻方 第一步,把1-16这些数字按照顺序填写在4×4的表格中。 第二步,把这个表格平分成四个小方阵。如图1中粗线。 第三步,在4×4方阵的上部的二小方阵中,取两对角线1、6和7、4组成V形两对角线。因为,4阶无与V形两对角线“相间隔又平行的那些数”。所以,无另外的那部分。因此,4阶幻方用此法是特例,其结果如同“对角线中心对称交换法”。 图1 第四步,将这些数字与方阵的下部中心对称的那些数,即1、16,6、11,4、13, 7、10进行交换。如图2即4阶幻方 图2

例如:8阶幻方 第一步,把1-61这些数字按照顺序填写在8×8的表格中。 第二步,把这个表格平分成四个小方阵。如图3中粗线。 第三步,在8×8方阵的上部的二小方阵中,取两对角线1、10、19、28和8、15、 22、29组成V形两对角线(红色)。还有,与V形两对角线“相间隔又 平行的那些数”,例如3、12,17、26和6、13,24、31等(黄色)组 成V区数字。 图3 第四步,将这些数字与方阵的下部中心对称的那些数,即1、10、19、28与64, 55、46、37等进行交换。如图4即8阶幻方 图4

魔方阵解答

P141 5.求Sn=a+aa+aaa+…+aa ….a 之值,其中a 是一个数字。如:2+22+222+2222(n=4),n 由键盘输入。 7.求 ∑∑∑===++100 150110 1 2 1k k k k k k

P168 7.输出魔方阵,所谓魔方阵是指这样的方阵,它的每一行、每一列和对角线之和均相等。

解:魔方阵中各数的排列规律如下: 1.)将1放在第一行中间的一列。 2.) 从2开始直到n×n止各数依次按下列规律存放:每一个数存放的行比前一个数的行数减 1,列数加1(如三阶魔方阵,5在4的上一行,后一列)。 3)如果上一数的行数为一,则下一个数的行数为n(指最下一行)。例如,1在第一行,则2应放在最下一行,列数加1。 4)当上一个数的列数为n时,下一个数的列数应为1,行数减1。例如,2在第3行最后一列,则3应放在第2行第1列。 5)如果按上面规则确定的位置上已有数,或上一个数是第1行第n列时,则把下一个数放在上一个数的下面。例:4应放在第一行第二列,但位置已被1占据,所以4就放在3的下面。由于6是第一行第三列(即最后一列),故7放在6下面。 N-S图:

10.有一篇文章,共有3行文字,每行80个字符。要求分别统计出其中英文大写字母、小写 字母、数字、空格,以及其他字符个数。

解:N-S图 程序:

P218 4.编写一个函数,使给定的一个二维数组(3×3)转置(行列互换) 10.写一个函数,输入一行字符,将此字符串中最长的单词输出。 分析:单词是由全字母组成的字符串,程序中设longest函数的作用是找最长单词的位置。此函数的返回值是该行字符中最长函数单词的起始位置。Longest N-S图

奇数阶幻方

三阶幻方的解法 第一种:杨辉法:九子斜排,上下对易,左右相更,四维挺出。 1 2 4 3 5 7 6 8 9 2 9 4 7 5 3 6 1 8 第二种:九宫图也是幻方的别称,三阶幻方就是著名的洛书,他的排列是::“戴九履一,左三右七,二四为肩,六八为足,五居中央(9在上中,1在下中。7在左中,3在右中,2在左上,4在右上,6在左下,8在右下,正中央5) 第三种:罗伯法:最小的数据上行中央,依次向右上方斜填,上出框往下写,右出框往左填,排重便在下格填,右上排重一个样 8 1 6 3 5 7 4 9 2 四阶幻方的解法 1、先把这16个数字按顺序从小到到排成一个4乘4的方阵 2、内外四个角对角上互补的数相易,(方阵分为两个正方形,外大内小,然后把大正方形的四个对角上的数字对换,小正方形四个对角上的数字对换)即(1,16)(4,13)互换 (6,11)(7,10)互换 16 2 3 13 5 11 10 8 9 7 6 12 4 14 1 5 1 另:对于n=4k阶幻方,我们先把数字按顺序填写。写好后,按4*4把它划分成k*k个方阵。因为n是4的倍数,一定能用4*4的小方阵分割。然后把每个小方阵的对角线,象制作4阶幻方的方法一样,对角线上的数字换成互补的数字,就构成幻方。 五阶幻方的解法:罗伯法:最小的数据上行中央,依次向右上方斜填,上出框往下写,右出框往左填,排重便在下格填,右上排重一个样。 17 24 1 8 15 23 5 7 14 16 4 6 13 20 22 10 12 19 21 3 11 18 25 2 9 (在最上一行的中间填1,接着在1的右上方填2,由于1在最上一行, 所以1的右上方应该是第五行的第四个, 接下来在2的右上方填3,3的右上方应该是第三行第一个,所以在此填4,在4的右

相关文档