Technik |  Romanhefte |  Fotografie |  Wer? |  Wo? |  Humor |  Webcam |  Gästebuch |  Sitemap | 
 
Linke obere Ecke Rechte obere Ecke
Neun-Live-Rätsel

Vorwort

9live-Screenshot

Aus einem Forum:

"Laßt 9live senden! Laßt 9live seltsame Spielchen mit seinem Publikum machen! Ab einem gewissen Dummheitsgrad muss man Dummheit gnadenlos ausnutzen. Mitleid mit den Anrufern ist fehl am Platz: Alle haben was davon. Der Spielsüchtige sein Spiel, der Sender seine Einnahmen und ich könnte mich kaputtlachen - bei der geballten Dummheit!"

Worum gehts?

Ihr kennt doch vom Drüberzappen diese Spielchen auf 9live, wo einem 9 Buchstaben in einem 3*3 Felder großen Quadrat gezeigt werden, und man raten soll, was das für ein Wort ist. Das ist manchmal ganz schön einfach, manchmal aber auch nicht. Beispielsweise sieht das erste Beispiel unten aus wie "GARTENZAUN", das ist aber falsch. Heraus kommt "AUGENARZT". Mir kam nun einfach so mal die Idee, man müßte ein Programm schreiben, das alle Variationen ausgibt. Das hilft einem zwar wegen der Riesenmenge der Kombinationen auch nicht weiter, aber darum gehts auch nicht, ich will ja nicht dort anrufen Wieviel Kombinationen sinds nun? Entwickeln wir das doch mal langsam:
  • Mit 2 Buchstaben ('AB') sinds 2 Möglichkeiten: 'AB' und 'BA'.
  • Mit 3 Buchstaben ('ABC') sinds 3*2 = 6 Möglichkeiten: 'ABC', 'ACB', 'BCA', 'BAC', 'CAB' und 'CBA'.
  • Bei 4 Buchstaben sinds dann 4*3*2 = 24,
  • bei 5 5*4*3*2 = 120 Möglichkeiten und
  • bei 9 Buchstaben sind 9*8*7*6*5*4*3*2 = 362.880 Permutationen möglich.
Für n Buchstaben gibt es also n! (Fakultät) Permutationen.
Ich wollte nun unbedingt mal eine rekursive Funktion programmieren, und habe mir ein wenig den Kopf zerbrochen. Damit ihr auch was davon habt, ist das Progrämmchen (siehe unten) in PHP geschrieben, es gibt nur leider ein kleines Problem, mein Webserver schafft es nicht, alle fast 400000 Kombinationen in 30 Sekunden (der Grenze für die Ausführungszeit der PHP-Programme, die ich auch nicht ändern möchte) auszugeben. Also hofft mal, daß der irgendwann ein Schnellerer wird...

Original 9live-Beispiele

GAR
ZTE
AUN
HOT
BLE
ETT
AUG
NNE
LID
MOL
TKE
REI
TUR
HON
ESE
AUM
BST
MMA
SCH
LAS
ICK
BET
EDT
CKE
FRA
FKN
URT
TAX
AFI
HRT
FER
ESN
HEN
LAS
LTT
IER
KRO
EKO
DIL
BAS
SLI
KUM
SIC
HER
EIT
LUT
SCH
NER
SEN
OBI
DRE
ZEU
SRA
UCH
SAB
ETO
ULR
BIE
NST
ICH

Hier der PHP-Quellcode der rekursiven Funktion:


<?php
function permut($text,$stelle) {
  
$sl=strlen($text);
  for (
$i=$stelle;$i<$sl;$i++) {
    
$wm=substr($text,0,$stelle);  
    
$text=substr($text,$stelle);
    
//text eine Stelle nach links rotieren;
    
$text=$wm.substr($text,1).substr($text,0,1);
    if (
$stelle<($sl-2)) permut($text,$stelle+1);
    else echo 
"$text ";
  } 
}
?>

Notice: Undefined variable: HTTP_POST_VARS in /home/sbarth/public_html/seiten/9live/inhalt.php on line 118



Startseite Seitenanfang Mail an Steffen schreiben Seitenstatistik Valid HTML 4.0 Transitional 859352   seit 22.9.2002  

Seite vom: 06.03.2006, 20:26 Uhr (Seite #16)

Linke untere Ecke Rechte untere Ecke