Hallo, ich habe Probleme bei folgender Aufgabe:
Schreiben Sie eine Prozedur, die die Teilmenge der Zahlen von 1 bis ausgibt, die sich nicht als Summe von drei Quadraten darstellen lassen. Beachten Sie, dass die alleinige Verwendung der Aussage
"Sei aus den natürlichen Zahlen. Wenn kongruent gilt, dann ist nicht Summe von drei Quadraten."
nicht zu einer vollständigen Lösung führt. (Hinweis: Möglicherweise kann Ihnen der Befehl minus nützlich sein.)
Meine Ansätze:
1. Ansatz:
DreiQuadrate:=proc() #gibt die Teilmenge der Zahlen von 1 bis aus, die sich nicht als Summe von drei Quadraten darstellen lassen local #P ist die Menge der Quadratzahlen zwischen 1 und #N ist die Teilmenge der Zahlen von 1 bis die sich als Summe von drei Quadraten darstellen lassen
for from 1 to do union minus if and then union minus fi; od;
print(M);
end: DreiQuadrate();
Hier gibt mir Maple auch Zahlen aus (die Ausgabe ist das, was nach dem "end:" steht), welche sich durchaus als Summe von drei Quadraten darstellen lassen, wie beispielsweise . etc.
2. Ansatz:
DreiQuadrate:=proc() #gibt die Teilmenge der Zahlen von 1 bis aus, die sich nicht als Summe von drei Quadraten darstellen lassen local #N ist die Menge der Zahlen von 1 bis die sich als Summe von drei Quadraten darstellen lassen
for from 1 to do for from 0 to do if and then union minus fi; od; od;
print(M);
end: DreiQuadrate();
Hier wiederum fehlen Zahlen, welche sich nicht als Summe dreier Quadratzahlen darstellen lassen, wie beispielsweise die .
Kann mir jemand von euch einen Tipp geben, wie ich meine Fehler beheben könnte?? Bin für jede Hilfe dankbar!!
Für alle, die mir helfen möchten (automatisch von OnlineMathe generiert): "Ich bräuchte bitte einen kompletten Lösungsweg." (setzt voraus, dass der Fragesteller alle seine Lösungsversuche zur Frage hinzufügt und sich aktiv an der Problemlösung beteiligt.) |