Thread RDW 2007/8: Festbreitentext
(8 answers)
Opened by Ishka at 2007-04-03 16:31
Momentan habe ich 13 Aufgaben vorrätig. 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).
RDW 2007/8 - Raetsel der Woche Nummer 8 des Jahres 2007 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Regeln: ~~~~~~~ * Bitte nicht vor Ablauf der ersten sieben Tage nach Veröffentlichung Hinweise, Spoiler, Lösungen oder Lösungsteile posten! * Verständnisfragen dürfen selbstverständlich auch vor Ablauf der sieben 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 sieben Tage abgelaufen sind, werden Lösungen in das ![]() * Sobald die Lösungen veröffentlicht wurden darf hier natürlich über sie diskutiert werden. * Sofern das Programm Parameter bekommt, diese bitte vollständig, sofern nicht explizit anders gefordert, mittels @ARGV auslesen, damit die Lösungen besser (und vor allem einfacher) vergleichbar sind. * Die Lösungen sollten nicht von jedem Einzelnen gepostet, sondern per E-Mail an mich geschickt werden, damit ich sie testen, "bewerten" und zusammenfassen kann. Die Adresse dafür lautet: ishka <---Minus---> rdw <---At---> kettenbruch <---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: ~~~~~~~~~~~~ Schreibe ein Programm, welches in einen Text Zeilenumbrüche einbaut, so daß alle Zeilen die gleiche Maximallänge haben. Genauer gesagt soll das Programm via @ARGV zwei Parameter bekommen, wobei der erste sagt, wie lang eine Zeile maximal sein soll und der zweite ist der zu zerlegende Text. Bei welchen Zeichentypen zu trennen ist und was mit den Zeichen dann passiert, überlasse ich eurer Phantasie :) Beispiel: ~~~~~~~~~ @ARGV=(16, 'Hallo Welt'); Ausgabe: Hallo Welt @ARGV=(6, 'Hallo Welt'); Ausgabe: Hallo Welt @ARGV=(13, 'Und auch noch ein etwas längerer Beispieltext'); Ausgabe: Und auch noch ein etwas längerer Beispieltext\n\n <!--EDIT|renee|1175603935--> 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} |