![]() |
9Live Buchstaben Salat-Spiel
Hi,
ich hätte mal eine frage^^, ich würde gern ein Programm schreiben, dass ein Buchstabelsalt zn gelvo in alle möglichen kombinationen wiedergibt. hier z.b gelvo ogelv vogel lvoge elvog ich wollte die zeichenkette dann in array machen und bla..dann in einer schleife...aber ka irgenwie klappt das nicht so ganz. Wär super wenn ihr mir dabei helfen könnten!!! Danke euch schon mal jetzt Bis dann NMR |
Re: 9Live Buchstaben Salat-Spiel
das sind aber nicht alle kombinationen...
Such am besten mal bei google nach Anagramm. Ich denke, das hilft mehr, als sich ein Programm ohen Wörterbuch etc. zu schreiben. |
Re: 9Live Buchstaben Salat-Spiel
nee will das schon gerne selber schreiben ^^ das doch der spaß an der sache...
|
Re: 9Live Buchstaben Salat-Spiel
Die Anzahl der Möglichkeiten berechnet sich bei n Stellen immer nach n!. Also 1*2*3...*n
Bei 9 Stellen wären das dann 9! = 1*2*3*4*5*6*7*8*9 = 362880 Möglichkeiten. Das nur so nebenbei. Du musst einfach das Ding als Array nehmen und dann auf zufällige Stellen des Wortes zugreifen, wobei du aufpassen musst, auf keinen bereits verwendeten Buchstaben zu stoßen. |
Re: 9Live Buchstaben Salat-Spiel
<delphi>wegen Nichtbeachtung gelöscht</delphi>
|
Re: 9Live Buchstaben Salat-Spiel
Zitat:
"Stamm" zB hat 5! / 2!. Die 2! kommt daher, weil die "m"s in Stamm nicht unterscheidbar sind. Gruß Thomas |
Re: 9Live Buchstaben Salat-Spiel
Diese Dinger nennen sich "Permutationen". Dazu gibts hier in der DP einige Codes, zB einen von Hagen (der wohl - so wie wir Hagen kennen - recht effizient sein dürfte ;)):
![]() Dann gibts in der CodeLib noch einen von glkgereon: ![]() Ich hab mir beide Codes jetzt nicht genauer angeschaut, aber du bekommst die Permutationen zB, indem du rekursiv in deiner Ausgangsfolge 2 Stellen vertauschst. Der Code dazu ist nichtmal allzu schwer. Ich denke aber mal, daß Hagen und glkgereon sich etwas mehr Gedanken gemacht und dann einen etwas performanteren Code entwickelt haben ;) |
Re: 9Live Buchstaben Salat-Spiel
jo vielen dank klappt wunderbar!!!
|
Re: 9Live Buchstaben Salat-Spiel
Zitat:
|
Re: 9Live Buchstaben Salat-Spiel
Leider gibt es ja in Delphi keine STL :) Dort gibt es die Funktionen "next_permutation" und "prev_permutation" genau für diese Zwecke.
Allerdings gibt es doch für Delphi ähnliche Containerklassen wie in der STL, hab ich mal irgendwo gelesen, glaub sogar von den JEDIs. Oder ich irre mich komplett... :gruebel: Aber falls nicht, könnte es dort doch auch solche Funktionen geben. btw: ein Kleines Prog für Buchstaben-Salat: ![]() |
Alle Zeitangaben in WEZ +1. Es ist jetzt 22:10 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz