24小时热门版块排行榜    

北京石油化工学院2026年研究生招生接收调剂公告
查看: 864  |  回复: 2

shuh2010

银虫 (初入文坛)


[交流] 【求助】求助四阶幻方的算法?

四阶幻方的算法?
即:1    2     3      4
       5    6      7    8
      9    10    11   12  
     13    14     15   16
行加和=34   列加和=34      对角线加和=34

[ Last edited by shuh2010 on 2010-12-31 at 15:49 ]

我想知道的是算法?为什么这么编程,而不是具体程序?

[ Last edited by shuh2010 on 2011-1-27 at 17:10 ]
回复此楼

» 猜你喜欢

» 抢金币啦!回帖就可以得到:

查看全部散金贴

已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

xiegangmai

版主 (职业作家)


★ ★ ★ ★
shuh2010(金币+1):谢谢参与
余泽成(金币+3):谢谢参与应助! 2011-01-07 11:25:47
shuh2010(金币+50): 2011-05-24 10:15:20
引用回帖:
Originally posted by shuh2010 at 2010-12-28 14:47:34:
四阶幻方的算法?
即:1    2     3      4
       5    6      7    8
      9    10    11   12  
     13    14     15   16
行加和=34   列加和=34      对角线加和=34

[ Last edited by shuh2010 o ...

MATLAB中有这样的函数magic,算法可参照http://www.docin.com/p-48553445.html。

MATLAB中的magic代码:
CODE:
function M = magic(n)
%MAGIC  Magic square.
%   MAGIC(N) is an N-by-N matrix constructed from the integers
%   1 through N^2 with equal row, column, and diagonal sums.
%   Produces valid magic squares for all N > 0 except N = 2.

%   Copyright 1984-2002 The MathWorks, Inc.
%   $Revision: 5.15 $  $Date: 2002/04/15 03:44:23 $

% Historically, MATLAB's magic was a built-in function.
% This M-file uses a new algorithm to generate the same matrices.

n = floor(real(double(n(1))));

% Odd order.
if mod(n,2) == 1
   [J,I] = meshgrid(1:n);
   A = mod(I+J-(n+3)/2,n);
   B = mod(I+2*J-2,n);
   M = n*A + B + 1;

% Doubly even order.
elseif mod(n,4) == 0
   [J,I] = meshgrid(1:n);
   K = fix(mod(I,4)/2) == fix(mod(J,4)/2);
   M = reshape(1:n*n,n,n)';
   M(K) = n*n+1 - M(K);

% Singly even order.
else
   p = n/2;
   M = magic(p);
   M = [M M+2*p^2; M+3*p^2 M+p^2];
   if n == 2, return, end
   i = (1:p)';
   k = (n-2)/4;
   j = [1:k (n-k+2):n];
   M([i; i+p],j) = M([i+p; i],j);
   i = k+1;
   j = [1 i];
   M([i; i+p],j) = M([i+p; i],j);
end

2楼2011-01-06 14:57:59
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

xiegangmai

版主 (职业作家)


★ ★
余泽成(金币+2):辛苦了,欢迎常来程序语言版! 2011-01-07 11:26:04
引用回帖:
Originally posted by shuh2010 at 2010-12-28 14:47:34:
四阶幻方的算法?
即:1    2     3      4
       5    6      7    8
      9    10    11   12  
     13    14     15   16
行加和=34   列加和=34      对角线加和=34

[ Last edited by shuh2010 o ...

这有一段C++的代码,生成的是<= 20的奇数魔方矩阵,可以参考。
http://zhidao.baidu.com/question/132129452.html
3楼2011-01-06 15:31:44
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 shuh2010 的主题更新
普通表情 高级回复 (可上传附件)
最具人气热帖推荐 [查看全部] 作者 回/看 最后发表
[考研] 309分085801求调剂 +10 学员Gtwj7W 2026-03-31 10/500 2026-04-02 22:42 by yunlongyang
[考研] 085600,320分求调剂 +6 大馋小子 2026-04-02 6/300 2026-04-02 21:54 by dongzh2009
[考研] 一志愿华中农业071010,总分320求调剂 +6 困困困困坤坤 2026-04-02 6/300 2026-04-02 21:28 by dongzh2009
[基金申请] esi高被引论文是不是能对中标有所加分和帮助呢 +4 redcom 2026-04-01 5/250 2026-04-02 20:48 by redcom
[考研] 一志愿085600中科院宁波所276分求调剂 +26 材料学257求调剂 2026-03-28 27/1350 2026-04-02 15:15 by chyhaha
[考研] 一志愿北京科技大学085601材料工程英一数二初试总分335求调剂 +8 双马尾痞老板2 2026-04-02 9/450 2026-04-02 14:45 by 5896
[考研] 一志愿北京科技大学085601材料工程英一数二初试总分335求调剂 +9 双马尾痞老板2 2026-04-01 9/450 2026-04-02 12:14 by oooqiao
[考研] 各位老师好,我的一志愿为北京科技大学085601材料专硕 +13 Koxui 2026-03-28 13/650 2026-04-02 09:35 by 哒哒哒呱呱呱
[考研] 307分求调剂 +14 (o~o) 2026-03-31 15/750 2026-04-01 20:43 by longlotian
[考研] 生物与医药考研调剂 +5 铁憨憨123425 2026-03-31 5/250 2026-04-01 18:01 by syh9288
[考研] 349求调剂 +6 吃的不少 2026-04-01 6/300 2026-04-01 17:55 by JYD2011
[考研] 318一志愿吉林大学生物与医药 求调剂 +6 笃行致远. 2026-03-28 6/300 2026-04-01 09:28 by oooqiao
[考研] 0856求调剂 +9 楒桉 2026-03-28 9/450 2026-03-31 19:06 by 暮泽12
[考研] 080500-315分复试调剂 +9 上岸3821 2026-03-31 9/450 2026-03-31 17:29 by 唐沐儿
[考研] 生物考研337分求调剂 +4 cgxin 2026-03-30 6/300 2026-03-31 14:18 by 记事本2026
[考研] 一志愿浙江大学工科动力工程370,数一121,专业课135,现在能去哪里 +3 080700调剂 2026-03-30 4/200 2026-03-31 12:00 by KLMY666
[考研] 一志愿华中师范化学332分求调剂 +3 Lyy930824@ 2026-03-29 3/150 2026-03-30 20:15 by DHUSHUAI
[考研] 071010 323 分求调剂 +3 Baekzhy 2026-03-27 3/150 2026-03-30 14:24 by andresqi
[考研] 复试调剂 +3 raojunqi0129 2026-03-28 3/150 2026-03-28 15:27 by 落睿可思
[考研] 一志愿南京航空航天大学材料学硕求调剂 +3 @taotao 2026-03-28 3/150 2026-03-28 10:26 by JourneyLucky
信息提示
请填处理意见