Follow along with the video below to see how to install our site as a web app on your home screen.
Anmerkung: This feature may not be available in some browsers.
Wenn ich das richtig verstanden habe, willst du quasi aus einem eingegebenen String mehrere Zufallsstrings bauen.
Dann wird die diese Funktion weiter helfen
-> http://de3.php.net/manual/de/function.str-shuffle.php
gruss Sven
$string="WWWWWWFFFF";
$ausgabe = Array();
$found = 0;
while($found < 200)
{
$stringshuffle = str_shuffle($string);
if(!in_array($stringshuffle, $ausgabe))
{
$ausgabe[] = $stringshuffle;
}
else
{
$found++;
}
}
foreach($ausgabe as $string)
{
echo($string."<br>");
}
PHP:$string="WWWWWWFFFF"; $ausgabe = Array(); $found = 0; while($found < 200) { $stringshuffle = str_shuffle($string); if(!in_array($stringshuffle, $ausgabe)) { $ausgabe[] = $stringshuffle; } else { $found++; } } foreach($ausgabe as $string) { echo($string."<br>"); }
Dieses Script sucht so lange mögliche Varianten, bis 200 mal keine weitere gefunden wurde
Ich gehe mal davon aus, dass wenn 200 mal keine weitere Variante gefunden wird, es auch keine weiter gibt
$ergebnis = 0;
$test = "";
$erlaubt = Array("w","a",);
$lang = count($erlaubt);
for(a = 0 ; a < $lang ; a++){
for(b = 0 ; b < $lang ; b++){
for(c = 0 ; c < $lang ; c++){
for(d = 0 ; d < $lang ; d++){
for(e = 0 ; e < $lang ; e++){
for(f = 0 ; f < $lang ; f++){
for(g = 0 ; g < $lang ; g++){
for(h = 0 ; h < $lang ; h++){
for(i = 0 ; i < $lang ; i++){
for(j = 0 ; j < $lang ; j++){
$ergebnis++;
$text+=$erlaubt[$a].$erlaubt[$b].$erlaubt[$c].$erlaubt[$d].$erlaubt[$e].$erlaubt[$f].$erlaubt[$g].$erlaubt[$h].$erlaubt[$i].$erlaubt[$j]." <br />\n";
}
}
}
}
}
}
}
}
}
}
echo ("Es gibt ".$ergebnis." Möglichkeiten:");
echo($text);
Ist zwar ziemlich umständlich, und man muss für jede Kombination ein neues Script machen, aber es gibt wirklich alle Lösungen zurück:
Nur das dumme ist: das geht nur, wenn es insgesamt 10 Buchstaben sein sollen, sonst gibt es andere Werte aus :(PHP:$ergebnis = 0; $test = ""; $erlaubt = Array("w","a",); $lang = count($erlaubt); for(a = 0 ; a < $lang ; a++){ for(b = 0 ; b < $lang ; b++){ for(c = 0 ; c < $lang ; c++){ for(d = 0 ; d < $lang ; d++){ for(e = 0 ; e < $lang ; e++){ for(f = 0 ; f < $lang ; f++){ for(g = 0 ; g < $lang ; g++){ for(h = 0 ; h < $lang ; h++){ for(i = 0 ; i < $lang ; i++){ for(j = 0 ; j < $lang ; j++){ $ergebnis++; $text+=$erlaubt[$a].$erlaubt[$b].$erlaubt[$c].$erlaubt[$d].$erlaubt[$e].$erlaubt[$f].$erlaubt[$g].$erlaubt[$h].$erlaubt[$i].$erlaubt[$j]." <br />\n"; } } } } } } } } } } echo ("Es gibt ".$ergebnis." Möglichkeiten:"); echo($text);
Wenn es nur um das ausrechnen von allen möglichen Werten geht, dann muss man ja nur (anzahl an elementen) ^ (länge des etxtes) rechnen, aber du willst ja alle Ergebnisse :-/
Dann änder die while schleife dementsprechend, dass es öfters probiert wird(Leider doch! Lass das Script mal mehrmals laufen und lass dir immer sizeof($ausgabe) ausgeben, dann siehst du, dass es immer unterschiedliche viele Lösungen findet.
Ich brauche eher einen Algorithmus der alle Lösungen systematisch erstellt...