tutorials.de Buch-Aktion 05/2012
ERLEDIGT
NEIN
ANTWORTEN
2
ZUGRIFFE
1310
EMPFEHLEN
  • An Twitter übertragen
  • An Facebook übertragen
AUF DIESES THEMA
ANTWORTEN
  1. #1
    Disap Disap ist offline Mitglied Silber
    Registriert seit
    May 2004
    Ort
    Hamburg
    Beiträge
    61
    Moin zusammen.

    Angenommen ich habe die Buchstaben A B und C. Diese möchte ich nun so anordnen, sodass es alle Kombinationen verwendet wurden. Ähnlich wie bei den Quizshows, wo man irgendwelche Buchstaben anordnen soll z. B. I, S, T und das Wort erraten muss (aber deswegen will ich so ein Programm nicht schreiben). Dann gibt es ja die sechs verschiedenen Möglichkeiten:
    1.:
    (I, S, T)
    (S, I, T)
    (I, T, S)
    (S, T, I)
    (T, S, I)
    (T, I, S)
    Zum einen finde ich es recht kompliziert, alle Möglichkeiten von Hand aufzuschreiben - ich übersehe immer Anordnungsmöglichkeiten –und zum anderen wachsen die Anzahl der Möglichkeiten sehr schnell. Bei vier Buchstaben wären es schon 24 verschiedene Kombinationen.
    Also angenommen, ich habe nun drei Variablen mit den Werten: I, S und T.
    Gibt es hier eine Möglichkeit nun die Buchstaben anzuordnen, ohne vorher schon so eine Auflistung (siehe 1. ) aufzuschreiben? Oder muss man das tatsächlich manuell machen?
    Ich suche also nach einer Möglichkeit, Buchstaben automatisch in allen Kombinationen anordnen zu lassen.

    Es dankt:
    Disap
     

  2. #2
    Registriert seit
    Dec 2002
    Ort
    Trier
    Beiträge
    17.502
    Blog-Einträge
    10
    Wenn dir die Reihenfolge der Kombinationen egal ist, könntest du ganz einfach mit der str_shuffle()-Funktion die Zeichenkette so lange durcheinanderwürfeln, bis alle Kombinationen vorgekommen sind, etwa:
    PHP-Code:
    <?php

        
    function fact$int )
        {
            if( 
    $int<) return 1;
            for( 
    $f=2$int-1>1$f*=$int-- );
            return 
    $f;
        }

        
    $string 'ist';
        
    $array = array();
        
    $fact fact(strlen($string));
        for( 
    $i=0$i<$fact; ) {
            if( !isset(
    $array[$string]) ) {
                
    $array[$string] = $string;
                
    $i++;
            }
            
    $string str_shuffle($string);
        }
        
    print_r($array);

    ?>
     
    Markus Wulftange

  3. #3
    Vlantis Vlantis ist offline Grünschnabel
    Registriert seit
    Mar 2009
    Beiträge
    1
    Ich habe ein ähnliches Problem zu lösen, und die Funktion scheint ein guter Ansatz zu sein, vieilleicht kann mir da mal jemand weiterhelfen.

    Ich möchte alle möglichen Kombinationen aus (z.B.) A B und C ausgeben, wobei ein Buchstabe auch mehrfach vorkommen darf, also auch AAB, ACA oder CCC. Es können auch gerne Zahlen 1 2 und 3 sein, falls es die Funktion einfacher/schneller macht.

    Danke im Voraus.

    V.
     

Ähnliche Themen

  1. Antworten: 9
    Letzter Beitrag: 16.04.10, 00:00
  2. Alle moeglichen Kombinationen (X aus X) mit Vorgaben
    Von OwlJ im Forum Algorithmen & Datenstrukturen mit Java
    Antworten: 7
    Letzter Beitrag: 19.03.10, 20:04
  3. Antworten: 3
    Letzter Beitrag: 11.03.10, 23:08
  4. Alle Kombinationen durch rotieren
    Von kjh im Forum Visual Basic 6.0
    Antworten: 2
    Letzter Beitrag: 29.08.06, 22:26
  5. Alle möglichen Kombinationen
    Von Snape im Forum Algorithmen & Datenstrukturen mit Java
    Antworten: 3
    Letzter Beitrag: 21.09.05, 12:07