Hallo Werner,
vielen Dank für Deine schnelle Antwort.
Deine Idee mit dem Makro finde ich sehr gut.
Am 15.01.2009 00:40, Werner Tietz schrieb:
in der Aufgabe des Monats sollen drei Quadratzahlen gefunden werden,
deren Summe die Zahl 2009 ergibt.
a² + b² + c² = 2009 mit a, b, c sind Element von N0 = {0,1,2,3,...}
>>
Wer kann mir einen Tipp geben?
Da Dein Makro aber für jede Lösung eine MsgBox öffnet und ich bei Makros
nicht fitt bin, habe ich Deine Idee in Pascal verwirklicht. Da kommt
dann eine TextDatei heraus. Und sie enthält 84 Zeilen.
Jede Kombination kommt 6mal vor.
Ändert man das Programm ab, so werden nur noch 14 eindeutige Lösungen
geliefert:
0 28 35 2009
2 18 41 2009
2 22 39 2009
3 8 44 2009
3 20 40 2009
4 12 43 2009
6 23 38 2009
7 14 42 2009
8 24 37 2009
9 22 38 2009
12 29 32 2009
16 27 32 2009
18 23 34 2009
22 25 30 2009
Folgendes Makro gibt eine ganze Menge an Kombinationen aus, von denen
sind aber nur 1/3 "echt" d.h. keine Wiederholung in anderer Reihenfolge.
Ich hab aber grad keine Idee die Wiederholungen auszuschliessen.
Um Wiederholungen auszuschließen, müssen die Schleifen nicht bei 1
beginnen, bei 1+ der Laufvariablen der übergeordneten Schleife.
___
Sub aqu_bqu_cqu
zn = 2009
maxabc = fix(zn^(1/2))
for a = 1 to maxabc
for a = 0 to maxabc
for b = 1 to maxabc
for b = 1+a to maxabc
for c = 1 to maxabc
for c = 1 + b to maxabc
if a^2 + b^2 + c^2 = zn then
msgbox a & " "& b & " " & c
end if
next c
next b
next a
End Sub
____
Viele Grüße
Thomas Kübler
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]