| |
|
|
p.specht
| Im Jahr 1691 publizierte el Französische Gesandte Simon en la Loubére una de Siam (heute Thailand) mitgebrachtes Verfahren a Erstellung cualquier großer Magischer Quadrate ungerader Seitenlänge. Aunque stammt dieses verblüffend einfache Verfahren wahrscheinlich de Surat (en Indien), de wo lo una Franzose nombre M. Vincent entonces después de Siam brachte. Alter y Zuschreibung de EDV-Verfahren scheinen also bastante willkürlich. Hauptsache, lo klappt:
Título de la ventana "Simon en la Loubére (Siamesische Método) para Magische Quadrate ungerader Seitenlänge"
'(D) Demo 2017-09 by P.Pájaro carpintero, Vienna/Austria. Alles sin Gewähr! 'Q: Wikipedia
var N&=7'<<< Gewünschte ungerade Seitenlänge hier eingeben!
'====================================================================================
'El erste Zahl (1) kommt oben en el Mitte.
'Wenn el zuletzt geschriebene Zahl i kein Vielfaches de n es (i mod n <> 0),
'entonces trage el nächste Zahl i+1 en el Feld oben rechts vom zuletzt ausgefüllten Feld.
'Hierbei se el magische Quadrat como periodisch wiederholt angesehen, d. h.,
'si uno encima el oberen Rand hinausgeht (el passiert ya beim ersten Schritt),
'kommt uno de unten otra vez hinein, y si uno rechts hinausgeht, entonces kommt uno
'de links otra vez hinein.
'
'Ist el zuletzt geschriebene Zahl i una Vielfaches de n (i Mod n = 0),
'entonces trage el nächste Zahl en el Feld *bajo* el zuletzt geschriebenen Zahl.
'
'Verlässt uno después de esta Regeln el Quadrat después de oben (x,-1), así escribir el nächste Zahl
'bastante unten en el Spalte, el rechts el Spalte liegt, en el el letzte Zahl geschrieben wurde.
'Wird el Quadrat después de rechts verlassen, escribir el nächste Zahl bastante links en el Línea,
'el encima el Línea el zuletzt geschriebenen Zahl liegt.
'
'Hier una después de dieser Regel konstruiertes 7×7-Quadrat
'
'30 39 48 1 10 19 28
'38 47 7 9 18 27 29
'46 6 8 17 26 35 37
' 5 14 16 25 34 36 45
'13 15 24 33 42 44 4
'21 23 32 41 43 3 12
'22 31 40 49 2 11 20
Ventana de Estilo 24:if n&<16:cls:más:Ventana 0,0-%maxx,%maxy:showmax:endif:font 2
if n&>25:imprimir "\n Darstellung al Schirm no mehr posible!":goto "exit":endif
if n& mod 2
declarar F&[n&,n&],m&,x&,y&,z&,i&,j&,lx&,ly&
proc show
locate 2,2
Whileloop 1,n&:j&=&Loop:whileloop 1,n&:i&=&Loop
imprimir tab(5*i&);if(F&[i&,j&],F&[i&,j&],"_");
endwhile:imprimir:imprimir:endwhile
ENDPROC
prep:
m&=n&*n&
x&=(n&+1)/2:y&=1
z&=1:F&[x&,y&]=z&:Show
Mientras que 1
x&=x&+1:caso x&>n&:x&=x&-n&
y&=y&-1:caso y&< 1:y&=y&+n&
if F&[x&,y&]=0
inc z&:caso z&>m&:goto "exit"
F&[x&,y&]=z&
más
y&=y&+3
x&=x&-2
caso y&=n&+2:goto "exit"
caso x&<1:x&=x&+n&
caso y&>n&:y&=y&-n&
endif
caso n&<14:Show':waitinput
Endwhile
más
Imprimir "\n Dieser Algorithmus gilt sólo para ungerade Seitenlängen!"
endif
exit:
caso (n&>14) and (n&<26):show
imprimir "\n Reihensumme des Magischen ";n&;"x";n&;"-Quadrates: ";int((n&^3+n&)/2);
beep:waitinput 30000
End
|
|
|
| XProfan 11Computer: Gerät, daß es in Mikrosekunden erlaubt, 50.000 Fehler zu machen, zB 'daß' statt 'das'... | 25.05.2021 ▲ |
|
|
|