Ergebnis berechnen

Neue Frage »

Anton_S Auf diesen Beitrag antworten »
Ergebnis berechnen
Hallo,

ich suche eine Möglichkeit das Ergebnis 232 mit folgenden Zahlen zu berechnen.
0,1,4,9,16,25,36,49,64,81,100,121,144,169,196,225,256,289

Wie heißt diese Art der Mathematik.
Wie Viele Möglichkeiten gibt es ?
Wie berechnet man so was ?

Gruß
Dopap Auf diesen Beitrag antworten »

und an welche Operatoren dachtest du?
Anton_S Auf diesen Beitrag antworten »
re
Nur +
HAL 9000 Auf diesen Beitrag antworten »

Es wäre noch zu klären, ob einzelne Summanden auch mehrfach vorkommen dürfen, also z.B. die 16 in , oder jeder Summand maximal einmal?


EDIT: Ok, ich sehe gerade, dass auch die 0 mit in deiner Liste ist. Na dann vermutlich nur "maximal einmal" - ansonsten wäre klar, dass man unendlich viele Möglichkeiten hat. Big Laugh
Anton_S Auf diesen Beitrag antworten »
re
Hallo,

zahlen dürfen auch mehrfach vorkommen. Und es dürfen maximal 18 Zahlen sein.
Elvis Auf diesen Beitrag antworten »

Google nach "additive Zerlegung" führt zu "Kombinatorik, Partitionen, additive Zahlentheorie" (PDF www.wias-berlin.de add. zt)

Entschuldigung. Ich hatte übersehen, dass nach Schulmathematik gefragt wurde.
 
 
HAL 9000 Auf diesen Beitrag antworten »

Wenn ich die 0 als Summanden mal außen vor lasse, sind es unter diesen Rahmenbedingungen

Zitat:
Original von Anton_S
zahlen dürfen auch mehrfach vorkommen. Und es dürfen maximal 18 Zahlen sein.

genau 4887 mögliche Summandenkombinationen (d.h. ohne Beachtung der Summandenreihenfolge).

Berechnet per Bruteforce:

code:
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
Summanden := [1,4,9,16,25,36,49,64,81,100,121,144,169,196,225,256,289]:
SummenAnzahl := proc(Summe,MaxIndex,SummandenAnzahl)
  option remember ;
  begin
    Anzahl:=0:
    if (Summe >= 0) then
      if (Summe = 0) then
        Anzahl:=1
      elif (SummandenAnzahl > 0) and (MaxIndex > 0) then
        Anzahl:=_plus(SummenAnzahl(Summe-i*Summanden[MaxIndex],MaxIndex-1,SummandenAnzahl-i) $ i=0..min(SummandenAnzahl,floor(Summe/Summanden[MaxIndex])))
      end_if
    end_if:
    Anzahl
  end_proc:
SummenAnzahl(232,15,18);


EDIT: Upps, war noch ein Fehler drin. Jetzt stimmt es hoffentlich... verwirrt
Neue Frage »
Antworten »



Verwandte Themen

Die Beliebtesten »
Die Größten »
Die Neuesten »