Liste mit allen möglichen Buchstabenkombinationen

Diskutiere Liste mit allen möglichen Buchstabenkombinationen im Programmierung Forum im Bereich Software Forum; Hallo Ich bin jetzt seit mehreren Tagen am googlen nach so einem Programm, bin bis jetzt nicht fündig geworden, vielleicht kann mir hier jemand...
B

basti23

Threadstarter
Mitglied seit
07.06.2007
Beiträge
16
Alter
39
Hallo

Ich bin jetzt seit mehreren Tagen am googlen nach so einem Programm, bin bis jetzt nicht fündig geworden, vielleicht kann mir hier jemand helfen. Ich suche ein Programm das mir alle möglichen Kombiniationen für bestimmte Buchstaben in ein .txt (oder sonstwie) ausgibt. Dabei sollen auch Sonderzeichen möglich sein und die gross/kleinschreibung beachtet werden. Die Buchstaben müssen keinen Sinn machen, dh es müssen nicht zwingend Wörter rauskommen

Beispiel:

vorgegebene Buchstaben: E?t

und daraus dann Kombinationen erstellen wie zB: E,?,t,EE,E?,Et,?E,??,?t,tE,t?,tt,EEE,EE?,EEt,E?E,E??,E?t usw

er soll qasi alle Möglichkeiten in eine Liste ausgeben.

Wäre echt super wenn mir jemand helfen könnte!!!!

Danke
Basti
 
H

HyperTraxx

Mitglied seit
18.10.2005
Beiträge
22
hmmm hört sich interessant an, ist auch nicht sooo schwierig in ner Programmiersprache umzusetzen. :blush
nur mal reine verständnissfrage, wofür brauch man sowas? :confused

Gruß HyperTraxx
 
S

seppjo

Gast
Naja, ich denke das wird eher etwas komplexer um sowas umzusetzen. Ich werds bei Gelegenheit mit qBasic testen.
 
Peter Schirmer

Peter Schirmer

Dienstleister / Moderator
Mitglied seit
14.04.2006
Beiträge
7.060
Alter
39
Standort
7th Avenue, Ecke XP und Vista, 8ter Stock, Wohnung
Naja, ich denke das wird eher etwas komplexer um sowas umzusetzen. Ich werds bei Gelegenheit mit qBasic testen.
Da hast du Recht; es sind 27 mögliche Kombinationen. 3 Stellen => 3 verschiedene Buchstaben, also

1. Stelle: E, ?, t
2. Stelle: E, ?, t
3. Stelle: E, ?, t

Grundprinzip der Kombinatorik (3 * 3 * 3 = 27).

Und dabei haben wir noch nicht einmal die Groß- und Kleinschreibung beachtet.

Man müsste eigentlich eine dreifach geschachtelte Schleife bauen (hier in diesem Beispiel) und immer in jeder Schleife die Buchstaben verschieben.

Das ist richtig komplex. :cheesy

Knackig wird es erst recht, wenn die Groß- und Kleinschreibung beachtet wird und mehr Buchstaben reinkommen sollen.

Ich denke, "mal eben schreiben" funktioniert nicht. :unsure

Peter
 
S

seppjo

Gast
Grundprinzip der Kombinatorik (3 * 3 * 3 = 27)
Dachte ich zuerst auch. Das müssten aber mehr werden. Er will ja gleiche Buchstaben mehrfach zulassen und sich von den einzelkombinationen in die mehrfachkombinationen hinaufarbeiten. Veilleicht 3^4 = 81 könnte eher hinkommen wenn nicht sogar viel mehr. Das ist ja nicht binär.
 
Peter Schirmer

Peter Schirmer

Dienstleister / Moderator
Mitglied seit
14.04.2006
Beiträge
7.060
Alter
39
Standort
7th Avenue, Ecke XP und Vista, 8ter Stock, Wohnung
Dachte ich zuerst auch. Das müssten aber mehr werden. Er will ja gleiche Buchstaben mehrfach zulassen und sich von den einzelkombinationen in die mehrfachkombinationen hinaufarbeiten.
Meine Aussage bezog sich auf die Buchstaben E, ?, t (nur diese drei und keine andere schreibweise). Dann sind es 3^3=27.

Veilleicht 3^4 = 81 könnte eher hinkommen wenn nicht sogar viel mehr. Das ist ja nicht binär.
Das werden definitiv mehr, denn wenn erst einmal die Groß- und Kleinschreibung berücksichtigt wird bzw. mehr Buchstaben dazukommen.... :omg

Peter
 
Peter Schirmer

Peter Schirmer

Dienstleister / Moderator
Mitglied seit
14.04.2006
Beiträge
7.060
Alter
39
Standort
7th Avenue, Ecke XP und Vista, 8ter Stock, Wohnung
M

ModellbahnerTT

Mitglied seit
20.04.2005
Beiträge
3.778
Alter
39
@HyperTraxx Brauchen kann man es testen wie lange es braucht ein Paqsswort zu entschlüsseln. Besonders wenn man wissen will wie sicher ein Verfahren ist.

Mit einer Liste brauchst du gar nicht erst anfangen. Mit einer DB ist das ganze relativ einfach umzusetzen. Einfach drei Schleifen in ein ander verschachteln, die Zahlen von 1 bis 256 hoch zählen lassen und diese Zahlen dann in char wandeln und diese in einen String schreiben. Diesen String dann in die Datenbank schreiben. Aber Vorsicht nicht vergessen die Datenbankverbinding auch wieder zu schliessen da sonst ganz schnell der Datenbankrechner "die Füße hebt".

ModellbahnerTT

PS: Vorsicht das werden in ganz schnell 1.000.000 Kombinationen und mehr.
 
automatthias

automatthias

vernunftgeplagt
Mitglied seit
21.04.2006
Beiträge
8.053
nur mal reine verständnissfrage, wofür brauch man sowas?
So was lässt sich benutzen, um Passwörter zu generieren oder zu knacken, oder um Spamadressen zu produzieren.

Eine wirklich sinnvolle Nutzung fällt mir nicht ein.

Zur Kombinatorik:
(Anzahl der Zeichen im Zeichensatz) HOCH (Anzahl der gewünschten Stellen(Wortlänge))

Beispiel: simples Alphabet 26 Zeichen, Wortlänge 3 --> 26*26*26 = 26^3 = 17576 Möglichkeiten
 
Peter Schirmer

Peter Schirmer

Dienstleister / Moderator
Mitglied seit
14.04.2006
Beiträge
7.060
Alter
39
Standort
7th Avenue, Ecke XP und Vista, 8ter Stock, Wohnung
@HyperTraxx Brauchen kann man es testen wie lange es braucht ein Paqsswort zu entschlüsseln. Besonders wenn man wissen will wie sicher ein Verfahren ist.

Mit einer Liste brauchst du gar nicht erst anfangen. Mit einer DB ist das ganze relativ einfach umzusetzen. Einfach drei Schleifen in ein ander verschachteln, die Zahlen von 1 bis 256 hoch zählen lassen und diese Zahlen dann in char wandeln und diese in einen String schreiben. Diesen String dann in die Datenbank schreiben. Aber Vorsicht nicht vergessen die Datenbankverbinding auch wieder zu schliessen da sonst ganz schnell der Datenbankrechner "die Füße hebt".

ModellbahnerTT

PS: Vorsicht das werden in ganz schnell 1.000.000 Kombinationen und mehr.
Ja, richtig!

Wobei alleine schon die Variationen von E?t 3! Möglichkeiten bestehen, also 6 Stück.

E?t
Et?
?tE
?Et
T?e
TE?

Peter
 
S

seppjo

Gast
@froemken,
wow, genial gemacht. :up respekt
Kannst du auch den Algorithmus posten? (php code oder?)
 
froemken

froemken

SPONSOREN
Mitglied seit
22.02.2005
Beiträge
1.138
Alter
40
Standort
Im Oberbergischen
@froemken,
wow, genial gemacht. :up respekt
Kannst du auch den Algorithmus posten? (php code oder?)
Aber klar doch. In meiner Verzweiflung habe ich einfach versucht die Funktion in einem Foreach aufzurufen. Zu meinem Erstaunen hat es funktioniert :D

PHP:
<html>
<body>
<form action="moeglichkeiten.php" method="post">
<p>Kombi eingeben: <input type="text" name="kombi"></p>
<p><input type="submit" value="senden"></p>
</form>
</body>
</html>
<?php
$eingabe= $_POST["kombi"];
//Eingabelaenge
$laenge= strlen($eingabe);
//Buchstaben-Array
$bs= array();
$bs_temp= array();
//Counter
$counter= 0;
//Hilfsvariable
$k= 0;
//Buchstaben in Array einfuegen
for($i= 0;$i <$laenge;$i++)
{
$bs[$k] = strtolower(substr($eingabe,$i,1));
$temp= strtoupper($bs[$k]);
if($temp !=$bs[$k])
{
$k= $k +1;
$bs[$k] = $temp;
}
$k= $k +1;
}
for($i= 0;$i < count($bs);$i++)
{
$bs_temp[$i] = $bs[$i];
echo $bs[$i]."<br>";
$counter++;
}
vermehrung($bs,$bs_temp, count($bs),$laenge -1);
echo "<br><br>Anzahl Möglichkeiten: ".$counter;
function vermehrung($bs,$bs_temp,$laenge,$anzahl)
{
$bs_temp2= array();
 
if($anzahl !=0)
{
foreach($bs_tempas$bs_save)
{
for($j= 0;$j <$laenge;$j++)
{
$bs_temp2[$j] = $bs_save.$bs[$j];
echo $bs_save.$bs[$j]."<br>";
global $counter;
$counter++;
}
vermehrung($bs,$bs_temp2,$laenge,$anzahl -1);
}
}
else
{
return;
}
}
?>
 
S

seppjo

Gast
Danke.
Super gelöst. Das einzige was noch fehlt. Wenn mehrere gleiche Zeichen drin sind.

Wie verhält sich denn die Anzahl an Durchläufe? Also a la peterschirmer & seppjo.
Wir haben ja auf 3x3x3x3x3x3 oder so getippt. Was steckt jetzt wirklich dahinter. Ich muß das irgendwie visualisieren. Kann da kein Muster drin entdecken. Anders gesagt. Ich blick bei php kaum durch.
 
froemken

froemken

SPONSOREN
Mitglied seit
22.02.2005
Beiträge
1.138
Alter
40
Standort
Im Oberbergischen
das mit diesem 3x3x3 kannst du knicken, da ja auch Buchstaben alleine vorkommen können. Bei "abc" kann z.b. ja auch nur das "b" vorkommen. NUR wenn es IMMER 3 Buchstaben sind, NUR dann gilt die 3x3x3-Regel.

Hab das Vorkommen von jedem Buchstaben auf einmal beschränkt:
http://www.sfroemken.de/download/forenbilder/moeglichkeiten.php

PHP:
<html>
<body>
<form action="moeglichkeiten.php" method="post">
<p>Kombi eingeben: <input type="text" name="kombi"></p>
<p><input type="submit" value="senden"></p>
</form>
</body>
</html>
<?php
$eingabe = $_POST["kombi"];
//Eingabelaenge
$laenge = strlen($eingabe);
//Buchstaben-Array
$bs = array();
$bs_temp = array();
//Counter
$counter = 0;
//Hilfsvariable
$k = 0;
//Buchstaben in Array einfuegen
for($i = 0; $i < $laenge; $i++)
{
$bs[$k] = strtolower(substr($eingabe, $i, 1));
$temp = strtoupper($bs[$k]);
if($temp != $bs[$k])
{
$k = $k + 1;
$bs[$k] = $temp;
}
$k = $k + 1;
}
$bs = array_unique($bs);
for($i = 0; $i < count($bs); $i++)
{
$bs_temp[$i] = $bs[$i];
echo $bs[$i]."<br>";
$counter++;
}
vermehrung($bs, $bs_temp, count($bs), $laenge - 1);
echo "<br><br>Anzahl Möglichkeiten: ".$counter;
function vermehrung($bs, $bs_temp, $laenge, $anzahl)
{
$bs_temp2 = array();

if($anzahl != 0)
{
foreach($bs_temp as $bs_save)
{
for($j = 0; $j < $laenge; $j++)
{
$bs_temp2[$j] = $bs_save.$bs[$j];
echo $bs_save.$bs[$j]."<br>";
global $counter;
$counter++;
}
vermehrung($bs, $bs_temp2, $laenge, $anzahl - 1);
}
}
else
{
return;
}
}
 
?>
 
froemken

froemken

SPONSOREN
Mitglied seit
22.02.2005
Beiträge
1.138
Alter
40
Standort
Im Oberbergischen
In einer Formel müsste es so aus:

Bei "123":

3 hoch 3 + 3 hoch 2 + 3 hoch 1 = 39

Immer (Anzahl Möglichkeiten) hoch (jede Möglichkeit an Stellen) und Ergebnisse addieren.
 
H

HyperTraxx

Mitglied seit
18.10.2005
Beiträge
22
jetzt ist aber nen fehler drin ... schau mal nach, was macht er wenn mann: ccb oder xxa eingibt....

bzw nehmen wir mal an, eine gesuchte Kombination (od Passwort) ist : aBba

also gebe ich bei deinem Code ab ein, mann wird nie auf diese komination kommen...
da immer nur soviele zeichen hintereinander ausgegeben werden, wie zeichen oben eingegeben werden...
 
Thema:

Liste mit allen möglichen Buchstabenkombinationen

Sucheingaben

buchstabenkombinationen

,

alle kombinationen aus 4 buchstaben

,

alle kombination aus listen

,
alle kombinationen aus 3 buchstaben
, alle kombinationen von vier buchstaben, alle kombinationen aus einer auswahl zeichen, buchstaben alle kombinationen

Liste mit allen möglichen Buchstabenkombinationen - Ähnliche Themen

  • email block list (S3150)

    email block list (S3150): Hallo, irgendwie wird der Mailserver von euch geblockt. Anbei die Fehlermeldung Hi. This is the qmail-send program at srv01.xo3.de. I'm...
  • Borderlands 3 - Liste gültiger VIP-Codes bzw. SHiFT-Codes für Skins, Waffen und andere Goodies

    Borderlands 3 - Liste gültiger VIP-Codes bzw. SHiFT-Codes für Skins, Waffen und andere Goodies: Für Borderlands 3 gibt es VIP-Codes die man als sogenannter Vault-Insider im SHiFT-Konto einlösen kann, darum werden sie auch SHiFT-Codes genannt...
  • File Explorer friert bei Rechtsllick ein und eine Liste anderer Probleme

    File Explorer friert bei Rechtsllick ein und eine Liste anderer Probleme: Win 10. Seit einiger Zeit trat plötzlich eine Reihe seltsamer Probleme auf, und bisher hat mein Durchforsten des ganzen Internets danach keine...
  • Startmenü - Installiertes Programm von "Zuletzt hinzugefügt" in darunterliegende alphabetische Liste verschieben

    Startmenü - Installiertes Programm von "Zuletzt hinzugefügt" in darunterliegende alphabetische Liste verschieben: Ich habe unter Windows 10 Pro "Paint Classic" heruntergeladen und erfolgreich installiert, weil ich die Handhabung einfacher finde wie bei "Paint...
  • Google entfernt 85 Anwendungen und Spiele wegen Adware aus Google Play Store - Liste der Apps

    Google entfernt 85 Anwendungen und Spiele wegen Adware aus Google Play Store - Liste der Apps: Was bekommt der Windows Nutzer mit seinem Android Smartphone? Eine Masse an Anwendungen aller Art die sich kaum überschauen lässt und oft verlässt...
  • Ähnliche Themen

    Oben