Autor |
Beitrag |
Andi1982
      
Beiträge: 497
WinXP HE
D6 Enterprise
|
Verfasst: Mo 28.11.05 10:20
Hallo zusammen,
ich wollte gerade mit REXX eine Funktion Schreiben die alle möglichen Wörter aus einer bestimmten buchstabenkette ausgibt.
Z.B. man gibt die buchstaben 'A', 'B', 'C', 'D' mit und bekommt dann:
Zitat: | abcd
abdc
acbd
acdb
adbc
adcb
bacd
badc
bcad
bcda
bdac
bdca
cabd
cadb
cbad
cbda
cdab
cdba
dabc
dacb
dbac
dbca
dcab
dcba |
Hat jemand von euch eine Idee wie man bei sowas da vorgehen könnte?? Ist garnicht mal so unkompliziert wie ich dachte...
Falls jemand sowas schon einmal gesehen hat würde ich mich freuen über eure Ideen.
Gruß Andi
_________________ Solange die Bombe tickt ist alles in Ordnung, erst wenn sie damit aufhört wird es problematisch...
|
|
Narses
      

Beiträge: 10183
Erhaltene Danke: 1256
W10ent
TP3 .. D7pro .. D10.2CE
|
Verfasst: Mo 28.11.05 10:30
Moin!
Andi1982 hat folgendes geschrieben: | ich wollte gerade mit REXX eine Funktion Schreiben |
Dir ist schon aufgefallen, dass das hier ein Delphi-Forum ist... ?
Such mal nach PERMUTATION.
cu
Narses
|
|
Andi1982 
      
Beiträge: 497
WinXP HE
D6 Enterprise
|
Verfasst: Mo 28.11.05 10:32
Klar weiß ich dass das ein Delphi-Forum ist, aber habe es ja extra bei Algorithmen reingeschrieben und wenn ich zu hause bin schreibe ich das ganze auch in Delphi! aber hier auf der Arbeit habe ich nur Rexx, Cobol, Assembler und PL1 zur verfügung...
Ich werde mich mal auf die suche begeben  danke Erstmal!
_________________ Solange die Bombe tickt ist alles in Ordnung, erst wenn sie damit aufhört wird es problematisch...
|
|
Andi1982 
      
Beiträge: 497
WinXP HE
D6 Enterprise
|
Verfasst: Mo 28.11.05 10:59
Hallo,
mein Problem ist gelöst. Haber per PN folgenden Link bekommen:
www.swissdelphicente...showcode.php?id=1032
Vielen dank!!
_________________ Solange die Bombe tickt ist alles in Ordnung, erst wenn sie damit aufhört wird es problematisch...
|
|
Gausi
      
Beiträge: 8549
Erhaltene Danke: 478
Windows 7, Windows 10
D7 PE, Delphi XE3 Prof, Delphi 10.3 CE
|
Verfasst: Mo 28.11.05 11:02
Da braucht wohl jemand Hilfe für das Adventsgewinnspiel, was? 
_________________ We are, we were and will not be.
|
|
Andi1982 
      
Beiträge: 497
WinXP HE
D6 Enterprise
|
Verfasst: Mo 28.11.05 11:05
Oh wird es wieder eines geben??? habe ich noch garnicht gesehen... bin heute das erste mal wieder hier nach meinen 11 Wochen handgelenkbruch...
War eher für ein Gewinnspiel eines Fernsehsenders  aber wollte nicht ernsthaft mitmachen, nur aus reinen Lernzwecken wissen wie das gehen würde...
_________________ Solange die Bombe tickt ist alles in Ordnung, erst wenn sie damit aufhört wird es problematisch...
|
|
Amateur
      
Beiträge: 777
(Win98, WinMe) WinXP Prof
D3 Prof, D6 Pers, D2k5 Pers., Turbo C++ Explorer
|
Verfasst: Mo 28.11.05 11:51
hm aber die idee hinter ist nicht schlecht wenn man bei neun live mal wieder son gewinnspiel mit irgendwelchen buchstaben hat und einfach nicht hinter kommt. allerdings müsste man dann die erstellten wörter noch mit nem duden abgleichen denn das von hand zu machen wäre sehr sehr zeitaufwendig. gibts eigentlich dateien wie ein duden schon fertig zum runterladen nur ma so nebenbei gefragt?
_________________ "Kein dummes Gerede. Kein Rumrätseln. Denkt an nichts anderes mehr, nur noch an das, was vor euch liegt. Das ist die wahre Herausforderung. Ihr müßt euch vor euch selbst schützen, Leute." (Rennes in "Cube")
Beiträge: >700
|
|
Gausi
      
Beiträge: 8549
Erhaltene Danke: 478
Windows 7, Windows 10
D7 PE, Delphi XE3 Prof, Delphi 10.3 CE
|
Verfasst: Mo 28.11.05 12:00
Nur so nebenbei: Dieses Prinzip für das Gewinnspiel anzuwenden, oder bei den 9Live-Ratespielen (also bei den richtig schweren "da kommt keiner drauf, Leute, ruft an"-Rätseln), ist keine gute Idee, da es bei 10 Buchstaben über 3,5 Millionen mögliche Wörter gibt (es fallen ein paar weg, wenn mehrere Buchstaben gleich sind). Ich dachte, der Smilie (  ) hätte das deutlich gemacht.
Ich hatte das beim letzten Gewinnspiel mal probiert und weiss aus Erfahrung, dass das nicht funktioniert 
_________________ We are, we were and will not be.
|
|
Andi1982 
      
Beiträge: 497
WinXP HE
D6 Enterprise
|
Verfasst: Mo 28.11.05 12:04
Amateur hat folgendes geschrieben: | gibts eigentlich dateien wie ein duden schon fertig zum runterladen nur ma so nebenbei gefragt? |
Und da will wohl einer die wörter die nicht im Duden sind gleich raussortieren  auf die idee kam ich auch schon... Überleg dir mal das Wörterbuch von MSWord ranzuhängen 
_________________ Solange die Bombe tickt ist alles in Ordnung, erst wenn sie damit aufhört wird es problematisch...
|
|
Amateur
      
Beiträge: 777
(Win98, WinMe) WinXP Prof
D3 Prof, D6 Pers, D2k5 Pers., Turbo C++ Explorer
|
Verfasst: Mo 28.11.05 12:16
hmmm bei 26 buchstaben und einer länge des endwortes von sagen wir mal 9 buchstaben (länger sind die im fernsehen eh nie) käme man auf 26^9 möglichkeiten wenn ich mich recht erinnere... das sollte doch möglich sein zu berechnen. nur die falschen wörter rauszufiltern dürfte länger dauern. da müsste man den algo so coden dass er nicht immer die ganze liste nach dem wort durchsucht sondern dass er buchstabe für buchstabe die möglichen wörter sucht. mh sagen wir mal wir haben die kombination ahnfdieig. dann müsste er aus der liste alle wörter mit länge 9 buchstaben und a als 1. buchstaben suchen, dann aus der liste wieder alle mit h als 2 buchstaben und den rest löschen und dann n als dritten und so weiter bis er bei einem buchstaben kein richtiges wort mehr findet oder nur noch eins als lösung da steht. wenn eins übrig bleibt das wort in eine neue liste schreiben. das mit allen wörtern sollte doch zu schaffen sein. man könnte auch zunächst die liste weiter kürzen dass man erst alles was nicht einen der 9 buchstaben als anfang hat rauslöscht und nur 9 buchstaben länge nimmt und alles rauslöscht was einen buchstaben besitzt der nicht in der anfangskombination enthalten ist. dann kommt man auf ziemlich wenig wörter schon mal und wenn man dann die gefundenen kombos mit der liste abgleicht sollte es von der geschwindigkeit zu schaffen sein oder???
wird aber ne ziemliche friemelei mit den listen und so...vielleicht setzt ich mich mal dran das interessiert mich das projekt auch wenns für gewinnspiele selbst nicht viel bringt...(man kommt eh nie bei 9live durch!)
_________________ "Kein dummes Gerede. Kein Rumrätseln. Denkt an nichts anderes mehr, nur noch an das, was vor euch liegt. Das ist die wahre Herausforderung. Ihr müßt euch vor euch selbst schützen, Leute." (Rennes in "Cube")
Beiträge: >700
|
|
Andi1982 
      
Beiträge: 497
WinXP HE
D6 Enterprise
|
Verfasst: Mo 28.11.05 12:42
Bin gerade auf der Suche nach einem Wörterbuch das man ansteuern könnte zum durchsuchen... Die Datei mssp2_ge.lex kann ich leider nicht einfach so auslesen...
_________________ Solange die Bombe tickt ist alles in Ordnung, erst wenn sie damit aufhört wird es problematisch...
|
|
GTA-Place
      

Beiträge: 5248
Erhaltene Danke: 2
WIN XP, IE 7, FF 2.0
Delphi 7, Lazarus
|
Verfasst: Mo 28.11.05 22:14
Genau das wollte ich auch machen für die 9Live-Gewinnspiele. Alle meine Ideen klauen ^^
_________________ "Wer Ego-Shooter Killerspiele nennt, muss konsequenterweise jeden Horrorstreifen als Killerfilm bezeichnen." (Zeit.de)
|
|
Grishnak
      
Beiträge: 221
Windows XP Home
Delphi 7 PE, Delphi 2005 PE
|
Verfasst: Mo 28.11.05 22:34
...außerdem muß man nicht nur die Lösung wissen, sondern auch durchkommen (und jeder "Fehlversuch" kostet ja nur schlappe 0,49€)!
_________________ Mach' etwas idiotensicher und irgendjemand erfindet einen besseren Idioten!
|
|
GTA-Place
      

Beiträge: 5248
Erhaltene Danke: 2
WIN XP, IE 7, FF 2.0
Delphi 7, Lazarus
|
Verfasst: Mo 28.11.05 22:47
Wer sagt, dass er durchkommen will. Er will vielleicht nur (genau wie ich) wissen was rauskommt.
_________________ "Wer Ego-Shooter Killerspiele nennt, muss konsequenterweise jeden Horrorstreifen als Killerfilm bezeichnen." (Zeit.de)
|
|
Karlson
      
Beiträge: 2088
|
Verfasst: Mo 28.11.05 22:54
Amateur hat folgendes geschrieben: | hmmm bei 26 buchstaben und einer länge des endwortes von sagen wir mal 9 buchstaben (länger sind die im fernsehen eh nie) käme man auf 26^9 möglichkeiten wenn ich mich recht erinnere... das sollte doch möglich sein zu berechnen. nur die falschen wörter rauszufiltern dürfte länger dauern. da müsste man den algo so coden dass er nicht immer die ganze liste nach dem wort durchsucht sondern dass er buchstabe für buchstabe die möglichen wörter sucht. mh sagen wir mal wir haben die kombination ahnfdieig. dann müsste er aus der liste alle wörter mit länge 9 buchstaben und a als 1. buchstaben suchen, dann aus der liste wieder alle mit h als 2 buchstaben und den rest löschen und dann n als dritten und so weiter bis er bei einem buchstaben kein richtiges wort mehr findet oder nur noch eins als lösung da steht. wenn eins übrig bleibt das wort in eine neue liste schreiben. das mit allen wörtern sollte doch zu schaffen sein. man könnte auch zunächst die liste weiter kürzen dass man erst alles was nicht einen der 9 buchstaben als anfang hat rauslöscht und nur 9 buchstaben länge nimmt und alles rauslöscht was einen buchstaben besitzt der nicht in der anfangskombination enthalten ist. dann kommt man auf ziemlich wenig wörter schon mal und wenn man dann die gefundenen kombos mit der liste abgleicht sollte es von der geschwindigkeit zu schaffen sein oder???
wird aber ne ziemliche friemelei mit den listen und so...vielleicht setzt ich mich mal dran das interessiert mich das projekt auch wenns für gewinnspiele selbst nicht viel bringt...(man kommt eh nie bei 9live durch!)
|
Es sind nur 9^9 Kombinationen, das ist ein grosser Unterschied. Und wenn wir schon bei Brute Force sind, kannste auch gleich mal Passwortlisten durchforsten. Sollte wahrscheinlich sein das dass Wort dabei ist.
Allerdings kann ich mich an nicht ein Wort bei 9Live erinnern das nicht durch etwas Konzentration zu knacken war. Und das schwierige ist wie bereits gesagt das durchkommen.
|
|
Amateur
      
Beiträge: 777
(Win98, WinMe) WinXP Prof
D3 Prof, D6 Pers, D2k5 Pers., Turbo C++ Explorer
|
Verfasst: Mo 28.11.05 23:00
hm stimmt.... 9^9... noch weniger...
klar ist das durchkommen viel schwerer... geht ja auch wie immer um den lern effekt. außerdem kann man das ja vielleicht auch für andere dinge einsetzen. und manchmal haben die bei 9 live schon schwere wörter (nein ich bin nicht zu blöd aber die machen immer ein paar baby dinger und ein irre schweres um wieder kohle rein zu kriegen. und dann ist sowas interessant... aber das durchkommen ist wie immer das schwerste...)
_________________ "Kein dummes Gerede. Kein Rumrätseln. Denkt an nichts anderes mehr, nur noch an das, was vor euch liegt. Das ist die wahre Herausforderung. Ihr müßt euch vor euch selbst schützen, Leute." (Rennes in "Cube")
Beiträge: >700
|
|
Grishnak
      
Beiträge: 221
Windows XP Home
Delphi 7 PE, Delphi 2005 PE
|
Verfasst: Mo 28.11.05 23:56
9^9? oder vielleicht doch nur 9! (man darf ja jeden Buchstabe nur 1x verwenden, oder?)
_________________ Mach' etwas idiotensicher und irgendjemand erfindet einen besseren Idioten!
|
|
BenBE
      
Beiträge: 8721
Erhaltene Danke: 191
Win95, Win98SE, Win2K, WinXP
D1S, D3S, D4S, D5E, D6E, D7E, D9PE, D10E, D12P, DXEP, L0.9\FPC2.0
|
Verfasst: Di 29.11.05 00:20
Wortlisten in ne DB laden (ca 300000 Datensätze hat meine) und dann nur solange weiter kombinieren rekursiv, wie die DB noch mindestens einen Datensatz liefert ...
So habsch das z.B. letztes Jahr mit dem Lösungswort für das DF-Gewinnspiel gemacht ^^
Ansonsten:
SQL-Anweisung 1: 2: 3: 4: 5: 6: 7: 8: 9:
| SELECT * FROM Wortliste WHERE (Wort LIKE '*A*') OR (Wort LIKE '*B*') OR (Wort LIKE '*C*') OR (Wort LIKE '*D*') OR (Wort LIKE '*E*') OR (Wort LIKE '*F*'); |
Danach nur noch die Wörter filtern, die nicht den Bildungskriterien entsprechen ...
Sind meist nur knapp 10-20 ... Für Wörter wie Ananas ist diese Methode nicht geeignet ^^
_________________ Anyone who is capable of being elected president should on no account be allowed to do the job.
Ich code EdgeMonkey - In dubio pro Setting.
|
|
wolke
      
Beiträge: 240
|
Verfasst: Di 29.11.05 02:17
ich hätte hier eine deutsche wortliste rumliegen (einige fehleinträge sind noch drin), 5MB (gepackt 1.3MB - 371787 einträge).
hatte ich mir damals für ein worträtsel mal zusammengestellt, aus dem nie was wurde.
|
|
Andi1982 
      
Beiträge: 497
WinXP HE
D6 Enterprise
|
Verfasst: Di 29.11.05 14:27
Ich habe die Wortliste vom open office benutzt! die enthält etwa 314000 wörter nach meiner modifikation...
Habe aber inzwischen schonwieder eine neue herausforderung... aber diese versuche ich erstmal allein zu lösen bevor ich diese hier poste...
_________________ Solange die Bombe tickt ist alles in Ordnung, erst wenn sie damit aufhört wird es problematisch...
|
|