Георгий Александров

 

 

Программа на Yabasic для построения пандиагонального квадрата порядка n = 4k

 

 

     Наконец-то удалось отладить полностью программу и для расчета любых дьявольских квадратов четно-четного порядка. На экране монитора контролируются магические суммы по строкам, столбцам и главным диагоналям. Суммы по ломаным диагоналям я проверил на калькуляторе, убедившись в отсутствии ошибок. В файл "pan_n=4k.txt" печатается готовый магический квадрат.

 

Текст программы:

rem Построение магического квадрата порядка 4k+2 методом одностороннего хода шахматного коня

dim i(10000),j(10000),z(100,100),s1(100),s2(100),z1(10000)

open #1,"pan_n=4k.txt","w"

n=12

i=1:j=1:z=1:z(i,j)=1:z1(1)=1

i(1)=i:j(1)=j:nn=n*n

rem Блок формирования чисел z1(i)

dim a(1000),b(1000),c(1000)

t=n-1:for i=0 to t:a(i)=1+i*n:b(i)=a(i):next i:s=n/2-1

for i=n-1 to n/2 step -1:s=s+1:b(s)=a(i):next i:s=0:c(s)=0

for i=n/2 to n-1:s=s+1:c(s)=i:next i

for i=n/2-1 to 1 step -1:s=s+1:c(s)=i:next i:s=0

for i=0 to t:for j=0 to n-1:s=s+1:z1(s)=b(i)+c(j):next j:next i

s=0

rem Основная программа

for k=2 to nn

i1=i:j1=j:i=i(k-1)+2:j=j(k-1)+1

a0()

if z(i,j)<>0 then i=i1-1:j=j1-1:fi

a0()

i(k)=i:j(k)=j:z(i,j)=z1(k):next k

for i=n to 1 step -1:for j=n to 1 step -1

print z(i,j) using "####";:print #1,z(i,j) using "####";

s1(i)=s1(i)+z(i,j):next j:print:print #1:next i:print:print

for i=n to 1 step -1print s1(i);:next i:print:print

for j=1 to n:for i=n to 1 step -1:s2(j)=s2(j)+z(i,j):next i:next j

for j=1 to n:print s2(j);:next j:print:print:s=0

for i=1 to n:s=s+z(i,i):next i:print s:print:print

end

 

sub a0()

if i<=n and j>n then j=j-n:fi

if i>n and j<=n then i=i-n:fi

if i>n and j>n then i=i-n:j=j-n:fi

if j<1 then j=n+j:fi

if i<1 then i=n+i:fi

if j>n then j=j-n:fi

end sub

 

Пример пандиагонального магического квадрата размером 20х20 показан на странице

 

http://renuar911.narod.ru/PanMagic_20.JPG

 

 Итак, появилась возможность строить пандиагональные магические квадраты любого порядка, за исключением  n = 4k+2.

Ссылки на соответствующие статьи:

 

http://renuar911.narod.ru/ideal_mk.html

 

http://renuar911.narod.ru/1.htm

 

http://renuar911.narod.ru/MS4k_pan.html

 

 

13 сентября 2007 г.

Хостинг от uCoz