4阶,8阶“魔方阵”--解析
“魔方阵”再回首
之前看到过三阶的魔方阵,然后可以递推奇数阶。本小编做了讲解,如果有兴趣,可以翻阅以前的内容。
今天再来看看4阶8阶,递推偶数阶。魔方阵看起来难,无从下手其实经过认真分析,找到规律,也就轻松解决。
4阶:
简单说就是一个左上由1依序开始填,但遇上对角线不填。另一个是从左上由16开始填,是遇上对角线填。两者结合起来就是4阶魔方阵
分析如下:
4阶
//方法一:
void MagicSquare()
{#define ROW 4
#define COL 4int arr[ROW][COL];int tmp1 = ROW*COL;int tmp2 = 0;for(int i = 0;i < ROW;i++){for(int j = 0;j < COL;j++){if(i == j || (i+j == 3))//找规律{arr[i][j] = tmp1;}else {arr[i][j] = tmp2;}tmp1--;tmp2++;}}for(int i = 0;i < ROW;i++){for(int j = 0;j < COL;j++){printf("%-4d",arr[i][j]);}printf("\n");}
}
输出:
8阶:8阶就是4个4阶组成
*分析如下:
void MagicSquare()
{#define ROW 8#define COL 8int arr[ROW][COL];int tmp1 = ROW*COL;int tmp2 = 0;int i = 0;int j = 0;for(i = 0;i < ROW;i++){for(j = 0;j < COL;j++){if((i+j)%4 == 3 || i%4 == j%4)对角线{arr[i][j] = tmp1;}else{arr[i][j] = tmp2;//不是对角线}tmp1--;tmp2++;}}for(i= 0;i < ROW;i++){for(j = 0;j < COL;j++){printf("%-4d",arr[i][j]);}printf("\n");}
}
int main()
{MagicSquare();return 0;
}
输出:
此方法更规律,同样适用4阶,也是方法二
如有错误敬请各位读者批评,若感觉写的不错,就给小编点个赞吧,以示鼓励!!!
4阶,8阶“魔方阵”--解析相关推荐
- 奇数阶魔方阵算法分析
奇数阶魔方阵就是指行列数都是吧n(n>=3 且 n%2 == 1)的魔方阵 奇数阶魔方阵的数字规律 通过对奇数阶魔方阵的分析,其中的数字排列有如下的规律: (1)自然数1出现在第一行的正中间: ...
- 3阶魔方阵c语言算法,3阶魔方阵的算法
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 #include "stdlib.h" #include "stdio.h" int main() { int a ...
- java解决魔方阵(奇数阶)问题(适合小白!保会)
魔方阵冲呀 魔方阵的原理通俗点说就是 把1放到第一行中间位置 然后第二个数字向右上移动(行-1,列+1) 列超出行未超出,则放到(行-1,第一列) 行超出列未超出,则放到(最后一行,列加1) 行列均超 ...
- 三阶魔方c语言算法最高效率算法,3阶魔方阵的算法
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 #include "stdlib.h" #include "stdio.h" int main() { int a ...
- C语言:偶数阶魔方阵的实现(四的倍数)
偶阶魔方阵的实现步骤: 1.用横线和竖线将n阶方阵划分为m个4*4的小方阵: 2.将n*n个数从小到大,从左到右,从上到下依次填入方阵中,遇到4*4小方阵的对角线不填(此位置不填的数不作为下一个位置填 ...
- 奇数阶魔方阵(洛书)
奇数阶魔方阵(洛书) 题目: 将1~n的数子排列在n*n的方阵上,要求数子不能重复,方阵各行.各列.及两条对角线的数子之和相等.此位魔方阵,又称洛书(洛书是九行九列).若n为奇数,则为奇数阶魔方阵. ...
- 5阶魔方阵c语言程序设计,五阶魔方阵源代码c语言课到程设计.docx
五阶魔方阵源代码c语言课到程设计 主函数 #include #include #include # include "wenjian.c" # include "sanj ...
- 5阶魔方阵c语言程序设计,五阶魔方阵源代码c语言时课程设计.docx
五阶魔方阵源代码c语言时课程设计 主函数 #include #include #include # include "wenjian.c" # include "sanj ...
- 用c语言输出魔方阵答案,C语言——输出“魔方阵”(带解析)
魔方阵:每一行 每一列 对角线之和均相等,要求输出n阶魔方阵 总结的五大规律: 1.把 1 放第一行中间 2.行-1 列+1 3. if(上个数1行n列) 放它下边 (i=i+2; ...
- 判断魔方阵c语言程序设计_C语言实现魔方阵代码及解析
原标题:C语言实现魔方阵代码及解析 问题描述 编写程序,实现如下表所示的5-魔方阵. 17 24 1 8 15 23 5 7 14 16 4 6 13 20 22 10 12 19 21 3 11 1 ...
最新文章
- edgesForExtendedLayout、automaticallyAdjustsScrollV
- C++ union 使用总结
- 机器视觉:Caffe Python接口多进程提取特征
- mysql循环建表_mysql创建存储过程,批量建表分表00到99
- Coursera自动驾驶课程第2讲:The Requirements for Autonomy
- float在python_如何在python中读取.float文件? - python
- linux下ffmpeg的使用方法
- Neginx服务搭建
- pageable设置size_总结SpringBoot使用Pageable实现分页源码
- python怎么使用预训练的模型_Tensorflow加载Vgg预训练模型操作
- WIN7 (64 位)安装AutoCAD2012失败解决方法
- 游戏阴阳师启动闪退问题解决
- 北鲲云联合珠海中科先进技术研究院推出代算服务
- 计算机电源维修如何知道好坏,怎么判断电脑电源坏了 主板不通电解决方法
- JVM基础及JVM调优及常见参数详解
- 1075 PAT Judge 测试点四
- Python基于深度学习yolov5的扑克牌识别
- 2020最新版C/C++学习路线图--游戏服务器开发重点
- 【Windows7下安装各种版本MySQL】
- 三层交换机到底怎么配置才算高级?老杨手把手示范给你看
热门文章
- 刚刚get一个新技能-动态图
- Java框架学习顺序,主要讲解三大框架
- python技巧分享(八)
- 微软Office办公软件哪个版本更好用?office365,office2022,2023等
- 父亲节:再见,总有一天
- HTML5期末大作业:城市旅游网站设计——城市旅游-北京(5页) HTML+CSS+JavaScript 主题度假酒店 计划出行北京
- AcWing 320. 能量项链(环形区间DP)
- 扩展桌面:扩展屏幕没有连接,但程序还在扩展屏幕上,在看不到这个屏幕的情况下,怎么把程序窗口拉回来
- 反双曲函数及其对应的双曲函数的泰勒展开式及原公式
- MongoDB入门操作汇总