Foren » 39. Bundeswettbewerb Informatik

[39.1 A5 Wichteln] Ausgabe

    • 24 Beiträge
    25. Oktober 2020 10:26:50 CET

    Nur nochmal, damit ich es richtig verstehe:

    Ich muss bei der Ausgabe meiner erstellten Verteilung nur folgendes angeben:

    Teilnehmer a bekommt Geschenk b
    Teilnehmer c bekommt Geschenk d
    usw.

    Oder muss ich noch etwas zusätzliches angeben, zum Beispiel:

    Es wurden x 1.Wünsche erfüllt
    Es wurden y 2.Wünsche erfüllt
    Es wurden z 3.Wünsche erfüllt

    Ich würde mich am liebsten über eine Antwort von  Robert Czechowski oder Wolfgang Pohl freuen, da ich finde, dass Johnathan Buschs Antworten für mich meist uneindeutig sind.

    Vielen Dank   

    • 391 Beiträge
    26. Oktober 2020 16:13:41 CET

    Vorab: Wir von BWINF (also Robert C. und ich) finden, dass Jonathan gute Antworten gibt. Wir schauen regelmäßig, wer hier was postet, und wenn etwas in die falsche Richtung geht, schalten wir uns ein. Jonathans Antwort in [39.1 A5 Wichteln] Ausgabe ist sicher in Ordnung, kann aber ergänzt werden.

    Die Aufgabenstellung fordert: "Schreibe ein Programm, das … eine möglichst gute Verteilung … ausgibt." Eine Verteilung im engeren Sinne ist eine Angabe, wer welches Geschenk bekommt, wie in deinem ersten Vorschlag. Also sollte dein Programm das ausgeben. Aber wichtig ist auch, dass die gefundene Verteilung möglichst gut ist. Für die Bewertung ist also eine Angabe zur Qualität der Verteilung, so wie du sie als zweites vorschlägst, auch wichtig. Ein Programm, das die Aufgabe sinnvoll löst, muss diese Qualitätsangaben ohnehin kennen. Also kann es sie ruhig zusätzlich ausgeben. Das erleichtert die Bewertung und sollte auch für eigene Tests hilfreich sein.

    Generell ist es gut, bei Programmausgaben daran zu denken, für wen sie gedacht sind.

  • 28. Oktober 2020 20:32:29 CET

    Zum Thema Programmausgabe habe ich auch noch eine Frage.

    Vorab - mein Programm gibt sowohl die Zuordnung wie oben beschrieben aus, dann noch ob Erst/Zweit/Dritt/Kein Wunsch für den jeweiligen Schüler erfüllt wurde, und wieviele Erst/Zweit/Drittwünsche erfüllt wurden.

    Meine Frage bezieht sich allerdings auf die Dokumentation und auf die 7. Beispieldatei. Diese hat insgesamt 1000 Schüler. Um die komplette Programmausgabe abzudrucken, müsste ich mehrere Seiten der Dokumentation nur dafür verwenden. Nun die Frage - ist das wirklich nötig?

    Meine Idee wäre jetzt gewesen, stattdessen für dieses Beispiel nur die Anzahl der jeweils erfüllten Wünsche in die Dokumentation einzubinden, nicht jedoch die Zuordnung an sich. Die würde ich stattdessen mit einem Verweis auf das Programm selbst ersetzen. Das halte ich für sinnvoller als die Ergebnisse aufwendig in Tabellen zu kopieren und diese dann so zu formatieren, dass sie möglichst wenige Seiten Platz einnehmen. Tabellen mit 1000 Einträgen ließt sich ja vermutlich auch niemand durch (oder doch?)

    Ist es also möglich, die Programmausgabe in der Dokumentation auf ein sinnvolles Niveau zu kürzen? Wenn ja, wie stark? Oder muss tatsächlich die gesamte Programmausgabe in der Dokumentation enthalten sein? (letzteres meine ich einmal irgendwo gelesen zu haben, kann mich aber nicht recht erinnern wo)

    • 8 Beiträge
    31. Oktober 2020 07:43:25 CET
    Konrad N. said:

    Zum Thema Programmausgabe habe ich auch noch eine Frage.

    Vorab - mein Programm gibt sowohl die Zuordnung wie oben beschrieben aus, dann noch ob Erst/Zweit/Dritt/Kein Wunsch für den jeweiligen Schüler erfüllt wurde, und wieviele Erst/Zweit/Drittwünsche erfüllt wurden.

    Meine Frage bezieht sich allerdings auf die Dokumentation und auf die 7. Beispieldatei. Diese hat insgesamt 1000 Schüler. Um die komplette Programmausgabe abzudrucken, müsste ich mehrere Seiten der Dokumentation nur dafür verwenden. Nun die Frage - ist das wirklich nötig?

    Meine Idee wäre jetzt gewesen, stattdessen für dieses Beispiel nur die Anzahl der jeweils erfüllten Wünsche in die Dokumentation einzubinden, nicht jedoch die Zuordnung an sich. Die würde ich stattdessen mit einem Verweis auf das Programm selbst ersetzen. Das halte ich für sinnvoller als die Ergebnisse aufwendig in Tabellen zu kopieren und diese dann so zu formatieren, dass sie möglichst wenige Seiten Platz einnehmen. Tabellen mit 1000 Einträgen ließt sich ja vermutlich auch niemand durch (oder doch?)

    Ist es also möglich, die Programmausgabe in der Dokumentation auf ein sinnvolles Niveau zu kürzen? Wenn ja, wie stark? Oder muss tatsächlich die gesamte Programmausgabe in der Dokumentation enthalten sein? (letzteres meine ich einmal irgendwo gelesen zu haben, kann mich aber nicht recht erinnern wo)

    Ich habe dieselbe Frage auch. 1000 Zeile in der Dokumentation zu schreiben finde ich unrealistisch, jedoch steht in dem https://bwinf.de/fileadmin/bundeswettbewerb/38/loesungshinweise381.pdf">Lösungshinweis ;auch: 

    Wenn Beispiele und die zugehörigen Ergebnisse in der Dokumentation fehlen, führt das zu Punktabzug. Zur Bewertung ist für jede Aufgabe vorgegeben, zu wie vielen (und teils auch zu welchen) Beispielen korrekte Programmausgaben/-ergebnisse in der Dokumentation erwartet werden. Die Ergebnisse, die für die vorgegebenen Beispiele in der Dokumentation angegeben werden, sollten alle korrekt sein.

    Und angesichts, dass in der Aufgabe eine Verteilung gefordert wird anstatt der Anzahl der erfüllten Wünsche, ist es auch fragwürdig, ob es reichen würde, nur die Anzahl zu dokumentieren. Außerdem kann mein Programm doch gar keine solche Anzahl angeben, denn es ist nicht ein Teil der Aufgabe. Zwar kann ich es ändern - und vermutlich wird es nicht lange dauern -, aber ist es überhaupt nötig? 

    Geht es so, wenn man das Ergebnis in getrennten Text Dateien speichert?

    Kann jemand bitte das erklären?

    • 66 Beiträge
    31. Oktober 2020 19:38:46 CET

    Es ist sicher nicht sinnvoll, mit 1000 Zeilen Programmausgabe die Dokumentation zu „vermüllen“, da sich kein Mensch 1000 Zeilen durchließt, um festzustellen, dass sie eine korrekte optimale Verteilung angeben. Aus diesem Grund bringt es auch sicher nichts, alles davon in Tabellen zu formatieren. Aber man kann die Daten kompakter darstellen: z. B. mit dem Format a-b c-d e-f, also jeweils [Schüler]-[Geschenk][Leerzeichen] kommt man meinem kurzen Test zufolge nicht über 2 Seiten. Dann können die Daten wenigstens von einem Programm auf Korrektheit überprüft werden. Aber wenn die Daten nicht unbedingt in der Dokumentation direkt vollständig enthalten sein müssen, ist es auch dafür komfortabler, sie in einer Textdatei beizulegen.

    • 391 Beiträge
    3. November 2020 13:19:37 CET

    Generell ist es nicht zwingend, dass die Dokumentation zu den Beispielen die jeweils originale Ausgabe des Programms enthält. Das ist zwar gut und lässt Zweifel über die mögliche Herkunft von "per Hand" beschriebenen Ergebnissen erst gar nicht aufkommen. Aber bei langen Ausgaben sollte sinnvoll gekürzt und zusammengefasst werden. Am besten gibt das Programm selbst auch immer eine Zusammenfassung aus (falls das inhaltlich passt).

    Es ist außerdem gut, die Programmausgaben zu allen Beispielen auch als Textdateien mit einzusenden.