Open Source im professionellen Einsatz
Newsletter abonnieren
HEFTARCHIV | NEWS | VIDEO | BLOGS | WHITEPAPER | EVENTS | ACADEMY | ABO

Partner-Links:
Shopping
Yatego Deutschlands größte Shoppingmall. 7000 Shops,
2.5 Mio Artikel. Alle Bestseller, Gutscheine und Liveshopping.

Firewall bei Mercateo kaufen.

Ein Preisvergleich bei Hardware lohnt sich.

Bei inkpool.de Laserdrucker und mehr bestellen.

Sie suchen günstige Laptops? Schauen Sie doch mal bei Preisvergleich.org, Preisvergleich.eu, Preisvergleich.ch und Preisvergleich.at vorbei.

Linux Jobs

Job offers Netherlands


user friendly

  Home  »  Heft & Abo  »  Heftarchiv  »  2007  »  12  »  Frechheit siegt  

RSS-Feed der aktuellen News von Linux-Magazin Online

© Elgin Grabe und fotolia.com, ril

Diesen Artikel drucken Diesen Artikel weiterempfehlen Diesen Artikel kommentieren Newsletter abonnieren

Die Gewinner des Wettbewerbs zum Snapshot-Jubiläum

Frechheit siegt

von Michael Schilli
Erschienen im Linux-Magazin 2007/12

Manche Leser ließen sich in die Irre führen. Das zeigte die rege Forumsdiskussion zum Perl-Programmierwettbewerb anlässlich des zehnjährigen Bestehens der Snapshot-Kolumne im Linux-Magazin 10/2007. Inzwischen hat die Jury alle Einsendungen gesichtet und bewertet - jetzt stehen die Sieger fest.

Die Preisaufgabe im vorletzten Linux-Magazin fragte nach der bedingten Wahrscheinlichkeit, mit der ein Proband eine Tux-Tux-Karte in der Hand hält, wenn er bereits eine Karte mit Tux auf der Oberseite gezogen hat. Die richtige Lösung lautet 2:3, also etwa 66 Prozent. Warum? Wenn der Proband eine Karte mit dem Tux auf der Oberseite gewählt hat, dann muss es sich entweder um die Tux-Tux- oder die Tux-Gates-Karte handeln. Beide sind allerdings nicht gleich wahrscheinlich: Die Tux-Tux-Karte kommt zweimal so häufig dran wie die Tux-Bill-Karte, denn zöge der Proband den Bill, müsste er die Karte wieder zurück in den Topf legen und das Experiment wiederholen.

Reingelegt

Rund die Hälfte der Einsendungen liefert ein falsches Ergebnis. Die Wettbewerber berechneten entweder die Wahrscheinlichkeit für die Tux-Tux-Karte lediglich im ersten Versuch (33 Prozent) oder sie zählten gezogene Bill-Karten als gültige Experimente und landeten damit bei 50 Prozent.

Aber nicht nur das richtige Ergebnis zählt. Die Aufgabe verlangt auch Perl-Code, der das Experiment simuliert. Listing 1 zeigt eine mögliche Implementierung. Eine For-Schleife rattert durch 1000 Versuchsdurchgänge, eine Redo-Anweisung wiederholt das Experiment, falls Bill auftaucht. Bei einem Tux auf der Rückseite gibt es dagegen einen Punkt. Das Ergebnis ist das Verhältnis der Punkte zur Gesamtzahl der Versuchsdurchgänge.

Listing 1:
»tuxgates«

01 #!/usr/bin/perl -w
02 
03 use strict;
04 
05 my @cards = (
06     ['tux',   'tux'],
07     ['tux',   'gates'],
08     ['gates', 'gates']
09 );
10 
11 my $hits  = 0;
12 my $total = 1000;
13 
14 for(1..$total) {
15     my $draw  = $cards[rand @cards];
16 
17     my $front_idx = int rand 2;
18     my $back_idx  = !$front_idx;
19 
20     redo if $draw->[$front_idx] ne 'tux';
21 
22     if($draw->[$back_idx] eq 'tux') {
23         $hits++;
24     }
25 }
26 
27 print $hits, " of ", $total, "n";

Dreistigkeit

Die Jury bewertete die richtigen Einsendungen nach drei Kategorien: das kürzeste, das anschaulichste und das originellste Skript. In der Kategorie "Originell" gewinnt Thomas Güttler, dessen Einsendung die Redaktion als Erste erreichte und das richtige Ergebnis lieferte. Die bass erstaunte Jury fand aber bei näherem Hinsehen, dass Thomas die Frechheit besessen hat, ein Python-Skript einzusenden, das nur notdürftig in ein Perl-Skript verpackt ist. Es sucht einen installierten Python-Interpreter und übergibt ihm den Python-Code als String zur Ausführung. Für so viel Chuzpe verleiht die Jury volle zehn Punkte, die höchste Wertung - die Goldmedaille.

Hanspeter Schmid lieferte einen Vierzeiler, in dem er "Tuxlis" aus dem Wasser (H2O) entsteigen lässt und diese mit »unpack« wieder auseinanderklaubt, das reicht für Platz zwei. Patrick Falb nutzt einen regulären Ausdruck mit Look-Ahead, um eine Karte zu ziehen. Die Platzierungen von korrekt arbeitenden Skripten mit Origininalitätscharakter zeigt die Tabelle "Gewinner".

Beim kürzesten Skript war die Wertung relativ einfach, es zählte schlicht die Anzahl der Anschläge, das richtige Ergebnis natürlich vorausgesetzt. Dieses so genannte Perl-Golf trägt seinen Namen nach dem Golfsport, bei dem ja bekanntlich auch der Spieler mit den wenigsten Schlägen gewinnt.

Sie können diesen Artikel als PDF für 99 Cent kaufen. Klicken Sie dazu einfach auf eine der beiden Bezahloptionen Paypal oder ClickandBuy.


Diesen Artikel druckenDiesen Artikel weiterempfehlen Diesen Artikel kommentieren Newsletter abonnieren
Diese Seite zu Mister Wong hinzuf�gen Webnews yigg it! Slashdot it! Twittern!
Ähnliche Artikel
Gut, besser, optimal Optimierte Laufzeiten und verbesserte Verständlichkeit
Vom Thron gestürzt Die besten Lesereinsendungen des Programmierwettbewerbs
Recht einfach Leser fragen, der Linux-Magazin-Ratgeber antwortet
Wer A sagt, darf nicht B sagen Frage-Antwort-System fürs Web
Heilig nach Punkten Messenger-Plugin verschafft Vorteil durch Webseiten-Überwachung
Füttern nach Programm Tipps täglich verschicken
Whitepaper
The Role of Open Source in Data Integration

Obwohl in den letzten Jahren viele technische Fortschritte erzielt werden konnten, verfügen die meisten Datenintegrationsprozesse nach wie vor nur über eine sehr begrenzte Automatisierung. Das vorliegende White Paper von dem Industry Analyst Mark Madson wird zunächst ein grundlegendes Verständnis von Daten Integration vermitteln, die Vorzüge von Open Source Lösungen für Daten Integration erläutern und Ihnen professionelle Empfehlungen geben, damit Sie Ihre Integrationsjobs noch einfacher und produktiver gestalten können.

Download PDF (Registrierung erforderlich)
Open Source Datenintegration in der Praxis: Fallstudien und Anwendungsbeispiele (Folge 2)

Der zweite Teil des Open Source Datenintegration in der Praxis: Fallstudien und Anwendungsbeispiele White Papers beleuchtet anhand weiterer ausgewählter Case Studies die Implementierung von Open Source Datenintegration in der Praxis und benennt die daraus resultierenden Vorteile.

Download PDF (Registrierung erforderlich)
Kommentare (0)
 

Impressum |Datenschutzerklärung | © 2010Linux New Media AG
Partner-Sites
Deutschland: [Admin-Magazin] [LinuxUser] [EasyLinux] [Linux-Community] [Linux Technical Review] [Ubuntu User]
Europa: [EasyLinux Polen] [Linux Magazine Polen] [Linux Magazine Spanien]
International: [Linux Magazine International] [Linux Pro Magazine] [Ubuntu User] [Linux Magazine Brasilien] [EasyLinux Brasilien]