Zahlen als Summe von Quadratzahlen

Link zu Maxima Online: http://maxima-online.org/?inc=r-1210189933

(%i1) "*"/* Quelle der Aufgabstellung: http://www.zum.de/Faecher/
Materialien/dorner/manuskripthtml/quadratsummen/qzsummen.html */;
(%o1)                                  *
(%i2) "*"/* Die natürlichen Zahlen von 1 bis zu einer bestimmten
Obergrenze sind als Summe von Quadratzahlen darzustellen */;
(%o2)                                  *
(%i3) "*"/* Eingabe der Obergrenze */;
(%o3)                                  *
(%i4) og:10/* diese Obergrenze darf verändert werden */;
(%o4)                                 10
(%i5) "*"/* Verarbeitung */;
(%o5)                                  *
(%i6) liste:[];
(%o6)                                 []
(%i7) for z:1 thru og do block(for x1:0 thru floor(sqrt(z)) do
for x2:0 thru floor(sqrt(z)) do for x3:0 thru floor(sqrt(z)) do
for x4:0 thru floor(sqrt(z)) do if x1^2+x2^2+x3^2+x4^2=z then
liste:append(liste,[[z,sort([x1,x2,x3,x4])]]));
(%o7)                                done
(%i8) "*"/* Ausgabe */;
(%o8)                                  *
(%i9) transpose(listify(setify(liste)));
                            [ [1, [0, 0, 0, 1]]  ]
                            [                    ]
                            [ [2, [0, 0, 1, 1]]  ]
                            [                    ]
                            [ [3, [0, 1, 1, 1]]  ]
                            [                    ]
                            [ [4, [0, 0, 0, 2]]  ]
                            [                    ]
                            [ [4, [1, 1, 1, 1]]  ]
                            [                    ]
                            [ [5, [0, 0, 1, 2]]  ]
                            [                    ]
(%o9)                       [ [6, [0, 1, 1, 2]]  ]
                            [                    ]
                            [ [7, [1, 1, 1, 2]]  ]
                            [                    ]
                            [ [8, [0, 0, 2, 2]]  ]
                            [                    ]
                            [ [9, [0, 0, 0, 3]]  ]
                            [                    ]
                            [ [9, [0, 1, 2, 2]]  ]
                            [                    ]
                            [ [10, [0, 0, 1, 3]] ]
                            [                    ]
                            [ [10, [1, 1, 2, 2]] ]
(%i10)

Über Johnny Weilharter

Direktor i. R. der Bundeshandelsakademie und Bundeshandelssschule in Tamsweg, Österreich
Dieser Beitrag wurde unter PROGRAMMIERUNG veröffentlicht. Setze ein Lesezeichen auf den Permalink.

Schreibe einen Kommentar

Trage deine Daten unten ein oder klicke ein Icon um dich einzuloggen:

WordPress.com-Logo

Du kommentierst mit Deinem WordPress.com-Konto. Abmelden / Ändern )

Twitter-Bild

Du kommentierst mit Deinem Twitter-Konto. Abmelden / Ändern )

Facebook-Foto

Du kommentierst mit Deinem Facebook-Konto. Abmelden / Ändern )

Google+ Foto

Du kommentierst mit Deinem Google+-Konto. Abmelden / Ändern )

Verbinde mit %s