Wolfram Language

Algebra und Zahlentheorie

Lösen Sie eine Zahlzerlegungsaufgabe

Die neue Funktion Groupings ermöglicht es, alle möglichen Resultate aus der Kombination von Objekten und Operationen auf effiziente Weise zu generieren. Die Funktion ist besonders nützlich, um Rechenaufgaben, wie sie in der französischen TV-Sendung Des chiffres et des lettres vorkommen, oder die neuesten Arithmetiknüsse in den sozialen Medien zu lösen.

Legen Sie fest, wie Sie die Zahl 10 unter Verwendung der Zahlen 1, 1, 5, 8 und der vier Grundrechenarten erhalten.

In[1]:=
Click for copyable input
ints = {1, 1, 5, 8}; ops = {Plus, Subtract, Times, Divide};

Es gibt 3 840 Möglichkeiten, diese vier ganzen Zahlen und die Rechenoperationen zu kombinieren.

In[2]:=
Click for copyable input
Length[combs = Groupings[Permutations[ints], ops -> 2, HoldForm]]
Out[2]=

Hier ist ein Beispiel:

In[3]:=
Click for copyable input
RandomSample[combs, 10]
Out[3]=

Berechnen Sie das Ergebnis jeder Kombination. Viele davon beinhalten die Division durch 0.

In[4]:=
Click for copyable input
results = Quiet@ReleaseHold[combs];

Das ist die einzige Kombination, die 10 ergibt:

In[5]:=
Click for copyable input
Cases[Thread[Equal[combs, results]], _ == 10]
Out[5]=

Das häufigste Ergebnis ist 13. Es kann auf 240 mögliche Arten generiert werden.

In[6]:=
Click for copyable input
TakeLargestBy[Tally[results], Last, 5]
Out[6]=

Verwandte Beispiele

en es fr ja ko pt-br ru zh