【MATLAB编程】输出所有的九宫图

您所在的位置:网站首页 怎样用九宫格画画 【MATLAB编程】输出所有的九宫图

【MATLAB编程】输出所有的九宫图

2024-07-05 11:25| 来源: 网络整理| 查看: 265

【问题描述】九宫图是我国古老的数学问题,也是一种数字艺术,就是把1~9九个数字填到3行3列九个方格中,使其每一横、坚、斜行之和都等于15。

【九宫图历史】 《系辞》云:“河出图,洛出书,圣人则之。”在宋朝之前,洛书的记述只有文字。

九宫图实物最早发现于西汉,1977年中国考古学家在安徽阜阳县双古堆西汉古墓中发现汉文帝七年(前173年)的太乙九宫占盘,乃是中国汉代幻方的实物。东汉《数术记遗》也有记载。

后来陈抟以降认为河图洛书的洛书代表九宫图,为 1…9 这 9 个数,而 3 行、3 列以及两对角线上各自的数之和均为 15。 在这里插入图片描述

【问题分析】 1.首先用perms函数产生1-9的全排列矩阵(9!行9列)。 2.用reshape函数把全排列得到的矩阵重构成3x3的矩阵。 3.计算每一个3x3矩阵的行和、列和、主/副对角线和,并判断它们是否相等。 4.若相等,则把结果存在一个张量Result里。

【主程序代码】

%% clear all; close all; %% num = 9; Arr


【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3