Schrift
Wiki:Tipp zum Debugging: use Data::Dumper; local $Data::Dumper::Useqq = 1; print Dumper \@var;
[thread]8724[/thread]

Rätsel der Woche 2007/2: viel Spaß beim Rätseln



<< |< 1 2 3 4 >| >> 36 Einträge, 4 Seiten
Ishka
 2007-02-05 14:03
#74009 #74009
User since
2003-08-04
771 Artikel
HausmeisterIn
[Homepage] [default_avatar]
Nachdem das letzte Rätsel so gut angekommen ist, kann ich doch nicht umhin gleich eine neue Aufgabe zu stellen :)

Übrigends habe ich momentan 13 Aufgaben vorrätig, aber Vorschläge für neue Rätsel nehme ich immer gerne an (bitte als Mail und als Betreff für Vorschläge rdw-vorschlag enthalten lassen (in klein), damit ich die besser sortieren kann).

RDW 2007/2 - Raetsel der Woche Nummer 2 des Jahres 2007
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~


Regeln:
~~~~~~~
       * Bitte nicht vor Ablauf der ersten 72 Stunden (= drei Tage)
         nach Veröffentlichung Hinweise, Spoiler, Lösungen oder
         Lösungsteile posten!

       * Verständnisfragen dürfen selbstverständlich auch vor
         Ablauf der drei Tage in diesem Thread gestellt
         werden. Diskussionen über Lösungsansätze gehören aber
         nicht hierher.

       * Die Verwendung von Modulen ist generell erlaubt, wird jedoch
         das ganze Problem von einem Modul erschlagen, so macht das
         die Lösung langweilig -- und das ist nicht unbedingt der
         Sinn dieser Rätsel.

       * Erst wenn die drei Tage abgelaufen sind, werden Lösungen in
         das Wiki:Wiki gestellt und hier verlinkt.

       * Sobald die Lösungen veröffentlicht wurden darf hier
         natürlich über sie diskutiert werden.

       * Die Lösungen sollten nicht unbedingt von jedem Einzelnen
         gepostet, sondern vor allem per E-Mail an mich geschickt
         werden, damit ich sie testen, "bewerten"  und zusammenfassen
         kann. Die Adrese dafür lautet:

          stephan <---Punkt---> barth <---At---> gmx <---Punkt---> de

         Im Betreff sollte 'RDW' (also wirklich RDW und nicht Rätsel der
         Woche oder andere Ausformulierungen) und die Nummer des Rätsels
         stehen. Hilfreich wäre neben dem Quelltext der Benutzername
         im Forum sowie Perl- und OS-Version (siehe auch perl -v).


Die Aufgabe:
~~~~~~~~~~~~
         Gib zu einer Liste von Wörtern, die dem Programm als Parameter
         übergeben werden, zu jedem Wort mit - getrennt die Silben aus.
         Schreibe intern dazu eine Funktion, welche zu einem gegebenen
         Wort dieses in Silben zerlegt und als Liste zurückgibt.

         Das Programm muß nicht alle Wörter fehlerfrei zerlegen (kann es
         ohne Wörterbuch auch gar nicht), sollte aber auch nicht aus einem
         sehr langen Wörterbuch bestehen, nichtmal zur Erkennung der
         Grenzen zwischen zusammengesetzen Wörtern (wenn man ein
         Wörterbuch einbauen will, dann maximal 5 Wörter im Wörterbuch und
         Kommentar dazu, wie man es vergrößert.

         Die Golflösungen brauchen keine eigene Funktion dafür zu schreiben.
         Ferner sollen die Golf-interessierten selbst ausmachen, nach welchen
         Kritereien getrennt wird (würden sie unterschiedliche verwenden,
         würde das die Vergleichbarkeit der Längen gefährden).

Beispiel:
~~~~~~~~~
       Parameter:
         Hallo Welt Minute Silben Besen hinterher Wankelmut
       Ausgabe:
         Hal-lo
         Welt
         Mi-nu-te
         Sil-ben
         Be-sen
         hin-ter-her
         Wan-kel-mut
\n\n

<!--EDIT|Ishka|1170677050-->
sub z{if(@_){1while$x[$k=rand 10];t($t=$x[$k]=1)}print map"$z[$x[$_]]$_".($_%3?
"":"\n"),1..9}sub t{$j=0;$x[$_+1]==$t&&($j+=2**$_)for 0..8;z,die"Gewinner $z[$t]
"if grep$_==($j&$_),7,56,73,84,146,273,292,448;z,die"Gleichstand\n"if@x>9&&!grep
!$_,@x}@x=4;@z=qw{. [ (};z$^T&1;while(<>){next if$_>9||$x[$_];t$t=$x[$_]=2;z 1}
Ishka
 2007-02-06 02:25
#74010 #74010
User since
2003-08-04
771 Artikel
HausmeisterIn
[Homepage] [default_avatar]
ps:
Es wäre vielleicht nicht schlecht, wenn jeder Teilnehmer 2-30 Wörter dazuschreibt, die ich dann im Test der Lösungen am Schluß verwende. Sonst neige ich dazu nur die Wörter zu verwenden, an die ich denke und meine Lösung kommt dann beim Test überproportional gut weg ;)
sub z{if(@_){1while$x[$k=rand 10];t($t=$x[$k]=1)}print map"$z[$x[$_]]$_".($_%3?
"":"\n"),1..9}sub t{$j=0;$x[$_+1]==$t&&($j+=2**$_)for 0..8;z,die"Gewinner $z[$t]
"if grep$_==($j&$_),7,56,73,84,146,273,292,448;z,die"Gleichstand\n"if@x>9&&!grep
!$_,@x}@x=4;@z=qw{. [ (};z$^T&1;while(<>){next if$_>9||$x[$_];t$t=$x[$_]=2;z 1}
murphy
 2007-02-06 17:43
#74011 #74011
User since
2004-07-19
1776 Artikel
HausmeisterIn
[Homepage]
user image
Sollen wir eigentlich nach alter oder nach neuer Rechtschreibung trennen?
When C++ is your hammer, every problem looks like your thumb.
betterworld
 2007-02-07 00:52
#74012 #74012
User since
2003-08-21
2614 Artikel
ModeratorIn

user image
[quote=murphy,06.02.2007, 16:43]Sollen wir eigentlich nach alter oder nach neuer Rechtschreibung trennen?[/quote]
Das habe ich mir auch schon gedacht. Aber ich denke mal, es ist egal, weil die Regeln (für dieses Rätsel) eh nicht genau definiert sind. Wer unbedingt zu viel lange Weile hat, kann ja die abstrusen Trennungsregeln der alten Rechtschreibung einbauen (da muessen ja in manchen Faellen sogar neben den Bindestrichen noch Buchstaben ausgetauscht oder gar zugefuegt werden...) (Ich hoffe, das zaehlt jetzt nicht als Spoiler?)\n\n

<!--EDIT|betterworld|1170802504-->
Ishka
 2007-02-08 19:30
#74013 #74013
User since
2003-08-04
771 Artikel
HausmeisterIn
[Homepage] [default_avatar]
Nachdem ich bislang nur eine einzige Einsendung bekommen habe: Wer hat denn noch vor eine Lösung zu schreiben?
sub z{if(@_){1while$x[$k=rand 10];t($t=$x[$k]=1)}print map"$z[$x[$_]]$_".($_%3?
"":"\n"),1..9}sub t{$j=0;$x[$_+1]==$t&&($j+=2**$_)for 0..8;z,die"Gewinner $z[$t]
"if grep$_==($j&$_),7,56,73,84,146,273,292,448;z,die"Gleichstand\n"if@x>9&&!grep
!$_,@x}@x=4;@z=qw{. [ (};z$^T&1;while(<>){next if$_>9||$x[$_];t$t=$x[$_]=2;z 1}
renee
 2007-02-08 20:18
#74014 #74014
User since
2003-08-04
14371 Artikel
ModeratorIn
[Homepage] [default_avatar]
Ich bin im Moment nicht so wirklich fit... Mal schauen, ob ich noch was hinbekomme...
OTRS-Erweiterungen (http://feature-addons.de/)
Frankfurt Perlmongers (http://frankfurt.pm/)
--

Unterlagen OTRS-Workshop 2012: http://otrs.perl-services.de/workshop.html
Perl-Entwicklung: http://perl-services.de/
Ishka
 2007-02-09 00:22
#74015 #74015
User since
2003-08-04
771 Artikel
HausmeisterIn
[Homepage] [default_avatar]
ok, dann warte ich mit der Veröffentlichung noch. Aber fühl dich nicht gehetzt, oder gezwungen, es soll ja hauptsächlich Spaß machen.
sub z{if(@_){1while$x[$k=rand 10];t($t=$x[$k]=1)}print map"$z[$x[$_]]$_".($_%3?
"":"\n"),1..9}sub t{$j=0;$x[$_+1]==$t&&($j+=2**$_)for 0..8;z,die"Gewinner $z[$t]
"if grep$_==($j&$_),7,56,73,84,146,273,292,448;z,die"Gleichstand\n"if@x>9&&!grep
!$_,@x}@x=4;@z=qw{. [ (};z$^T&1;while(<>){next if$_>9||$x[$_];t$t=$x[$_]=2;z 1}
Dubu
 2007-02-09 00:24
#74016 #74016
User since
2003-08-04
2145 Artikel
ModeratorIn + EditorIn

user image
Ist unterwegs.
Ishka
 2007-02-09 02:11
#74017 #74017
User since
2003-08-04
771 Artikel
HausmeisterIn
[Homepage] [default_avatar]
schön :)
sub z{if(@_){1while$x[$k=rand 10];t($t=$x[$k]=1)}print map"$z[$x[$_]]$_".($_%3?
"":"\n"),1..9}sub t{$j=0;$x[$_+1]==$t&&($j+=2**$_)for 0..8;z,die"Gewinner $z[$t]
"if grep$_==($j&$_),7,56,73,84,146,273,292,448;z,die"Gleichstand\n"if@x>9&&!grep
!$_,@x}@x=4;@z=qw{. [ (};z$^T&1;while(<>){next if$_>9||$x[$_];t$t=$x[$_]=2;z 1}
murphy
 2007-02-09 17:51
#74018 #74018
User since
2004-07-19
1776 Artikel
HausmeisterIn
[Homepage]
user image
Alter Schwede. Bei diesem Problem steigen die Regulären Ausdrücke in meinem Programm total aus -- sogar einen Segfault habe ich damit schon produziert...
When C++ is your hammer, every problem looks like your thumb.
<< |< 1 2 3 4 >| >> 36 Einträge, 4 Seiten



View all threads created 2007-02-05 14:03.