![]() |
---|
Hallo zusammen, eine mathematische Frage um eine Programmiertechnische Sache zu lösen. Ich habe eine Liste mit verschiedenen Elementen X. Diese Elemente werden kombiniert zu einem neuen Element Y. besteht aus der Kombination von bis zu 4 Elementen X. Die Frage: Wenn ich nun jedem Element eine Primzahl zuordne, wird dann eine Kombination von eindeutig durch die Summe der Primzahlen der Elemente identifiziert, oder können verschiedene Kombinationen die selbe Quersumme ergeben? Grüße, Sebastian Für alle, die mir helfen möchten (automatisch von OnlineMathe generiert): "Ich benötige bitte nur das Ergebnis und keinen längeren Lösungsweg." |
Hierzu passend bei OnlineMathe: Online-Übungen (Übungsaufgaben) bei unterricht.de: |
![]() |
![]() |
Hallo, wenn ich das richtig verstehe, müsste es Probleme damit geben. Nimm die vier genügend weit auseinander liegende Primzahlzwillinge. Nimm von den Paaren zweimal den kleineren und zweimal den größeren. Deren Quersumme müsste doch jeweils gleich groß sein. Gucken wir doch mal: (5;7) (11;13) (17;19) (41;43) Nun die eine Kombination: 5;11;19;43 Die andere: 7;13;17;41 Nun kommt eine Stelle, die ich genau verstanden habe bei dir. Willst du nun die Summe der Primzahlen, die Summe der Quersummen der Primzahlen oder die Quersumme der Summe der Primzahlen bilden? Egal was davon, die Summe der vier Zahlen ist jeweils gleich groß, daher auch die Quersumme dieser Summe. Auch wenn du die Quersummen addierst, erhältst du das gleiche, im ersten Fall 5+2+10+7=24, im zweiten Fall 7+4+8+5=24. Ich verstehe deine Anfrage so, dass du anhand nur einer einzigen Zahl die Viererkombination eindeutig identifizieren willst. Dann wäre das PRODUKT der Zahlen (wenn es Primzahlen sind, etwa als assoziatives Array) dafür eindeutig. Rückwärts könntest du über den Modulo-Operator arbeiten. Mfg Michael |
![]() |
Danke für die schnelle Antwort! Ich meinte tatsächlich die Summe der Primzahlen (Quersumme war falsch...). Im Prinzip beantwortest du (wenn ich es richtig verstehe) genau was ich suche: Ein Element das aus mehreren Elementen mit je einer zugeordneten Primzahl besteht, lässt sich eindeutig durch das Produkt der Primzahlen der Elemente definieren. Oder ? Grüße, Sebastian |
![]() |
Hallo, ja, im Gegensatz zur Summe (die eben leider keine eindeutige Zerlegung zulässt) ist die Zerlegung in Primfaktoren eindeutig. Wie ich schon sagte, statt einer (doppelt verketteten) Liste nähme ich lieber ein assoziatives Feld. Den fortlaufenden Primzahlen wären dann irgendwelche Datenelemente zugeordnet. Wählt jetzt jemand irgendwelche 4 Datenelemente aus, also im Prinzip 4 Primzahlen, so kann man die Auswahl durch Bilden des Produkts reversibel kodieren. Nur aus Neugier: Ist das eine Übungsaufgabe oder ein konkretes Programmierproblem? Um der Wahrheit die Ehre zu geben: Die dabei entstehende Cipher (das Primzahlenprodukt) kann je nach Datenmenge sehr bis extrem hoch sein. Mfg Michael |
![]() |
Hi Michael, tausend Dank für die Antwort! Das ist tatsächlich ein konkretes Programmierproblem. Situation ist das sich Nutzer ein Produkt zusammenstellen können. Dieses besteht insgesamt aus 5 Elementen aus 4 verfügbaren, 4 aus über verfügbaren Elementen) die sich die Nutzer aussuchen können. Die Elemente sind strings. Die Reihenfolge der Eingabe ist natürlich nicht immer die Selbe, dadurch ergeben sich Elemente die auf der ausgegebenen Liste aller als unterschiedlich wirken. Beispiel: sieht anders aus als Mit dem Primzahlenprodukt finde ich aber einen Sortierungsschlüssel heraus, mit dem ich gleiche Kombinationen nebeneinander sortieren lassen kann. Soweit der Plan LG, Sebastian |
![]() |
Hallo, hm, ich bin noch nicht im Bilde, muss ich aber auch nicht. :-) Ich frage mich, wie das Vertauschen von Auswahlen über Multiplikationen (mit Primzahlen) zu verschiedenen Ergebnissen führen soll. Wie gesagt, muss ich aber nicht verstehen. Wenn's dir geholfen hat... Mfg Michael |