Häufige Fragen zur 1. Runde, 28. BWINF

Eine theoretische Lösung wird der Vizepräsidentin auch nur theoretisch nützen. Erst als Programm wird das gesuchte Verfahren ihr wirklich helfen.

Das wird grob in der Aufgabenstellung erklärt. Das Datenmodell soll erklären, "welche Daten verarbeitet werden sollen und wie diese miteinander zusammenhängen". Die Beschreibung des Datenmodells sollte eher nicht mit Elementen der verwendeten Programmiersprache erklärt werden (also nicht: Da gibt es eine String-Variable s und dann auch noch einen Integer-Array a ...). Versucht einen Weg zu finden, das Modell unabhängig von der späteren Umsetzung in ein Programm zu beschreiben.

 

Es ist schön, wenn diese Beschreibung möglichst strukturiert ist, also nicht (nur) in ganzen Sätzen, sondern eher in formaler oder graphischer Notation vorliegt. Informatiker haben für die Beschreibung von Datenmodellen einige Notationen entwickelt (z.B. ERM-Diagramme), aber deren Kenntnis und Verwendung setzen wir nicht voraus.

Ja. Wichtig sind die in den Aufgaben geforderten Ergebnisse. Vielleicht ist es nicht für alle Aufgaben günstig, mit Formaten wie JPEG zu arbeiten, bei denen Bilddaten mit Informationsverlust komprimiert werden.

Auch wenn sich hier ein ganz spezielles Problem stellt, sind Informatikerinnen und Informatiker erst dann zufrieden, wenn ein allgemeines Verfahren zur Lösung eines Problems gefunden ist. Nun könnte man ein solches allgemeines Verfahren, das auch mit leicht veränderten Bedingungen - also vielleicht der Karte einer um weitere Länder erweiterten EU oder einem anderen Senderadius - zurecht käme, einfach beschreiben und "von Hand" auf das konkrete Beispiel anwenden. Wie wollte man dann aber nachweisen, dass das Verfahren immer funktioniert bzw. wie gut es funktioniert? Das geht viel besser, wenn man es in ein Programm umsetzt; dann kann man nämlich viele verschiedene Beispiele damit bearbeiten und das Funktionieren des Programms daran demonstrieren.

Nein. Wer sozusagen "hauptamtlich" noch die Schule besucht bzw. Wehr- oder Zivildienst leistet und die Altersgrenze nicht überschreitet, kann teilnehmen.

In der ersten Runde ist Gruppenarbeit erlaubt und sogar erwünscht! Eine Gruppe schickt eine gemeinsame Einsendung (in einem Briefumschlag) mit einer gemeinsamen Lösung zu jeder bearbeiteten Aufgabe. Darunter kann auch die Junioraufgabe sein, wenn ein Gruppenmitglied das passende Alter hat. Es gibt offiziell keine Beschränkung für die Gruppengröße, aber eine Person pro bearbeiteter Aufgabe ist empfehlenswert - so kann für jede Aufgabe ein Gruppenmitglied verantwortlich sein. Da die Bewertung pro Einsendung vorgenommen wird, erhalten alle Gruppenmitglieder die gleiche Bewertung.

Das steht unter "Der Wettbewerb->Ablauf": "An der zweiten Runde dürfen jene teilnehmen, die allein oder zusammen mit anderen wenigstens drei Aufgaben weitgehend richtig gelöst haben." Wir bewerten aber auch, wenn nur eine Aufgabe bearbeitet wurde, nur kann man damit die zweite Runde nicht erreichen.

Nein. Die obige Bedingung für das Erreichen der zweiten Runde gilt auch für die Jüngeren. Aber: Bei denjenigen, die die Junioraufgabe bearbeiten dürfen, wird sie für die Qualifikation zur zweiten Runde gewertet, kann dann also eine der drei "weitgehend richtig" gelösten Aufgaben sein.

Beinahe alle bekannten Sprachen fallen unter den Begriff "gängige höhere Programmiersprache", der im Aufgabenblatt verwendet wird, sicher also u.a. C/C++, C#, Delphi, Java, Lisp, ML, Objective-C, Pascal, Perl, Prolog, Python, Ruby, Scala, ...; auch Basic-Dialekte sind akzeptabel. Maschinensprache/Assembler ist nicht zulässig; die Verwendung von asm oder Ähnlichem muss die absolute Ausnahme bleiben und besonders gut dokumentiert werden. Wichtig ist, dass wir lauffähige Programme möglichst in Form von ausführbaren Dateien zugeschickt bekommen, die ohne weiteres Zutun gestartet werden können. Benötigte Bibliotheken (libs, DLLs, ...) sollten beim Compilieren möglichst eingebunden werden. Bei Sprachen, die üblicherweise interpretiert werden oder/und Laufzeitumgebungen benötigen (Perl, PHP, Flash ActionScript, ...) sollte möglichst doch mit vorhandenen Compilern gearbeitet werden oder sollten die Programme z.B. so zur Verfügung gestellt werden, dass sie leicht auszuführen sind, z.B. mit Hilfe eines Web-Browsers (aber offline!). Wenn keine ausführbare Datei vorliegt, kann es sein, dass die Funktionsfähigkeit des Programms nur durch Lesen des Quellcodes überprüft wird. Das kann allerdings jeder Einsendung passieren, es ist also generell besonders genau zu kommentieren und zu dokumentieren.

Ja. Die meisten Programmiersprachen sind zwar theoretisch gleich leistungsstark, aber je nach Einsatzgebiet gibt es praktisch doch unterschiedliche Stärken.

Uns stehen Windows (XP Home und Vista), Linux (z.Zt. Ubuntu 8.04.1) und MacOS X (10.5) zur Verfügung. Es können also Linux- und MacOS-Programme eingesandt werden, allerdings sollen die Trägermedien (CDs oder DVDs) unter Windows lesbar sein (CDs: ISO9660). Voraussichtlich können auch iPhone-Apps ausgeführt werden.

Ja. Wir haben eine lokale Installation von Apache, die Perl-CGIs und PHP (auch in Kombination mit MySQL) unterstützt.

Ja, .NET-Sprachen können ohne weiteres verwendet werden.

Unsere Träger


Von der Kultusministerkonferenz empfohlene Schülerwettbewerbe

Hier finden Sie uns

Bundesweite Informatikwettbewerbe (BWINF)
In der Raste 12
53129 Bonn

Telefon
0228 - 3729000

Haben Sie Fragen?