Ermitteln Sie den Wert eines Sacks Münzen
Ein 1 Pfund schwerer Sack voll neuer US-amerikanischer Münzen wird aus einer Bank gestohlen. Was kann man, ohne den Sack zu öffnen, über dessen Geldwert aussagen? Eine offensichtliche und leicht zu messende Charakteristik ist das Gewicht des Sackes. Kombinieren Sie unter der Annahme eines Sack Münzen mit dem Gewicht eines Pfunds das Währungswissen der Wolfram Knowledgebase und die eingebaute Fähigkeit zur Lösung linearer Gleichungen, um den Erwartungswert des erbeuteten Geldsacks zu berechnen.
Ermitteln Sie als ersten Schritt eine Liste der sich derzeit im Umlauf befindenden US-amerikanischen Münzen.
![Click for copyable input](assets.de/valuate-a-bag-of-coins/In_23.png)
EntityClass["CurrencyDenomination", {EntityProperty[
"CurrencyDenomination", "IssuingCountry"] ->
Entity["Country", "UnitedStates"],
EntityProperty["CurrencyDenomination", "Format"] -> "coin"}]
![](assets.de/valuate-a-bag-of-coins/O_20.png)
Erweitern Sie die implizit definierte Entitätsklasse, indem Sie auf [+] klicken, finden Sie deren Mitglieder und sortieren Sie diese nach Wert.
![Click for copyable input](assets.de/valuate-a-bag-of-coins/In_24.png)
coinsUS = EntityList[
EntityClass[
"CurrencyDenomination", {
EntityProperty[
"CurrencyDenomination", "IssuingCountry"] -> Entity[
"Country", "UnitedStates"],
EntityProperty["CurrencyDenomination", "Format"] -> "coin"}]] //
SortBy[#[EntityProperty["CurrencyDenomination", "Value"]] &]
![](assets.de/valuate-a-bag-of-coins/O_21.png)
Erstellen Sie eine Collage von Münzenbildern.
![Click for copyable input](assets.de/valuate-a-bag-of-coins/In_25.png)
ImageCollage[
EntityValue[coinsUS,
EntityProperty["CurrencyDenomination", "Image"]],
Background -> White]
![](assets.de/valuate-a-bag-of-coins/O_22.png)
Fassen Sie die Münzeigenschaften in einer Tabelle zusammen.
![Click for copyable input](assets.de/valuate-a-bag-of-coins/In_26.png)
TextGrid[{ImageResize[#2, 60], #1,
Row[Riffle[#3, Style[" | ", Gray]]]} & @@@
EntityValue[
coinsUS, {EntityProperty["CurrencyDenomination", "Entity"],
EntityProperty["CurrencyDenomination", "Image"],
EntityProperty["CurrencyDenomination", "PeopleOnCurrency"]}],
Alignment -> {Left, Center}, Dividers -> All] // TraditionalForm
![](assets.de/valuate-a-bag-of-coins/O_23.png)
Ermitteln Sie die Münzbezeichnungen (in Cents) und die jeweilige Masse (in Gramm) und konvertieren Sie die Massewerte in rationale Zahlen.
![Click for copyable input](assets.de/valuate-a-bag-of-coins/In_27.png)
{values, masses} =
Transpose[EntityValue[coinsUS, {"Value", "Weight"}]]
![](assets.de/valuate-a-bag-of-coins/O_24.png)
![Click for copyable input](assets.de/valuate-a-bag-of-coins/In_28.png)
coinsandweights = Transpose[{
QuantityMagnitude[UnitConvert[values, "USCents"]],
Rationalize[QuantityMagnitude[N[UnitConvert[masses, "Grams"]]]]
}]
![](assets.de/valuate-a-bag-of-coins/O_25.png)
![Click for copyable input](assets.de/valuate-a-bag-of-coins/In_29.png)
lcm = LCM @@ Denominator[Rationalize[coinsandweights][[All, 2]]];
![Click for copyable input](assets.de/valuate-a-bag-of-coins/In_30.png)
rationalcoinweights = lcm #2 & @@@ Rationalize[coinsandweights]
![](assets.de/valuate-a-bag-of-coins/O_26.png)
Ermitteln Sie alle Münzverteilungen, die mit einem Gewicht von 1 Pfund (Messfehler von ± 0.1%) kompatibel sind (unter der Annahme, dass das Eigengewicht des Sacks vernachlässigbar gering ist).
![Click for copyable input](assets.de/valuate-a-bag-of-coins/In_31.png)
meanWeight =
QuantityMagnitude[UnitConvert[Quantity[1, "Pounds"], "Grams"]];
![Click for copyable input](assets.de/valuate-a-bag-of-coins/In_32.png)
error = Normal[Quantity[0.1, "Percent"]];
![Click for copyable input](assets.de/valuate-a-bag-of-coins/In_33.png)
{minScaledWeight,
maxScaledWeight} = {Floor[lcm meanWeight (1 - error/2)],
Ceiling[lcm meanWeight (1 + error/2)]}
![](assets.de/valuate-a-bag-of-coins/O_27.png)
Bestimmen Sie mit FrobeniusSolve alle möglichen Münzkombinationen, die das gefragte Gesamtgewicht ergeben.
![Click for copyable input](assets.de/valuate-a-bag-of-coins/In_35.png)
Flatten[allSolutions, 1] // Length
![](assets.de/valuate-a-bag-of-coins/O_28.png)
Ermitteln Sie den Mindest-, Median, Median- und Maximalwert des Gesamtwerts der Münzen im Sack (unter der Annahme, dass alle Kombinationen gleich wahrscheinlich sind).
![](assets.de/valuate-a-bag-of-coins/O_29.png)
Erstellen Sie ein Histogramm der Verteilung des Gesamtgeldwerts.
![Click for copyable input](assets.de/valuate-a-bag-of-coins/In_39.png)
Histogram[dollarValues, Automatic, "PDF",
AxesLabel -> {Quantity[None, "USDollars"], "fraction"}]
![](assets.de/valuate-a-bag-of-coins/O_30.png)
Die Gewichtsverteilung aller Säcke ist ziemlich einheitlich.
![Click for copyable input](assets.de/valuate-a-bag-of-coins/In_41.png)
Histogram[weightvalues, 50, "PDF",
AxesLabel -> {Quantity[None, "USDollars"], "fraction"}]
![](assets.de/valuate-a-bag-of-coins/O_31.png)
Plotten Sie die Verteilung der Münzanzahl.
![Click for copyable input](assets.de/valuate-a-bag-of-coins/In_42.png)
Histogram[Total /@ Flatten[allSolutions, 1], {5}]
![](assets.de/valuate-a-bag-of-coins/O_32.png)
Die bivariate Verteilung des Geldwerts versus die Münzanzahl im Sack.
![Click for copyable input](assets.de/valuate-a-bag-of-coins/In_43.png)
Histogram3D[{coins.#/100., Total[#]} & /@ Flatten[allSolutions, 1],
AxesLabel -> {Quantity[None, "USDollars"], "coins"}]
![](assets.de/valuate-a-bag-of-coins/O_33.png)