您现在的位置: 万盛学电脑网 >> 程序编程 >> 网络编程 >> 编程语言综合 >> 正文

批处理输出n阶幻方脚本

作者:佚名    责任编辑:admin    更新时间:2022-06-22

 幻方又称为魔方,方阵或厅平方。在一个由若干个排列整齐的数组成的正方形中,图中任意一横行、一纵行及对角线的几个数之和都相等,具有这种性质的图表,称为“幻方”,

中国古代称为“河图”、“洛书”,又叫“纵横图”。   代码如下: @echo off :start set /p n=Please input your odd integer: set /a p=n%%2 if %p% equ 0 echo Input error!&&goto start   set /a i=%n% set /a t=(%n%+1)/2 set /a a%t%_%n%=1,temp=1,m=n-1,p=n :repeat set /a p-=1 if %p% lss 0 goto array for /l %%a in (1 1 %m%) do (    setlocal enabledelayedexpansion    if !t! gtr %n% set /a t=1    if !i! gtr %n% set /a i=1    set /a s=!t!+1,q=!i!+1    if !s! gtr %n% set /a s=1    if !q! gtr %n% set /a q=1    set /a a!s!_!q!=a!t!_!i!+1,t+=1,i+=1    set /a temp+=1    if !temp! equ %n% (          set /a temp=1,tmp=a!s!_!q!,q-=1,i-=1          if !q! equ 0 set /a q=n          set /a a!s!_!q!=tmp+1          goto repeat )    ) pause :array echo Now behold the powerful Magic Sqaure^^!: set /a a!t!_!n!=1 for /l %%c in (!n! -1 1) do (    for /l %%d in (1 1 !n!) do (               set /a result=a%%d_%%c               set /p=!result!<nul       ) echo. ) pause>nul