Zur Haupt­na­vi­ga­ti­on sprin­gen [Alt]+[0] Zum Sei­ten­in­halt sprin­gen [Alt]+[1]

Ex­ter­ne Daten

Punktetabelle

Bild: Screen­shot von Aus­füh­rung des Pro­gramms „bal­ken­dia­gram­m_csv“ (Schal­ler, ZPG IMP)

Auf­ga­be: Ein Array soll mit Wer­ten aus einer Datei ge­füllt und dann an­ge­zeigt wer­den.

Externe Dateien

Auf­ga­be ex­ter­ne Datei:

Lade die Datei punk­te.csv mit einem Text­edi­tor (nicht mit einer Ta­bel­len­kal­ku­la­ti­on!):

  1. Un­ter­su­che, wie viele Zei­len und wie viele Spal­ten sie hat. Ist es eine csv-Datei mit Über­schrif­ten? Wel­ches Trenn­zei­chen wurde zwi­schen den Wer­ten ver­wen­det? Wur­den alle Texte in An­füh­rungs­zei­chen ein­ge­schlos­sen?

    Er­gän­ze die Datei um zwei ei­ge­ne Ein­trä­ge (so kannst du chea­ten... ).

Da­ten­ty­pen

Nach­dem man die Struk­tur der Daten kennt, kann man sich über­le­gen, wel­che Da­ten­ty­pen dazu pas­sen:

Art der Daten Da­ten­typ Be­fehl zum Aus­le­sen aus CSV-Datei
Ganze Zah­len int csv.​ge­t­Int(i,"Punk­te");
De­zi­mal­zah­len dou­ble oder float csv.​get­Float(i, "Mess­wert");
Texte String csv.​getString(i, "Name");

Punkt­schreib­wei­se

Ver­wen­det man vor­ge­ge­be­ne Bi­blio­the­ken, muss man oft zu­nächst ein so­ge­nann­tes "Ob­jekt" einer "Klas­se" er­schaf­fen (Be­fehl new):

z.B. Table csv = new Table(name,"header",',','"');

Hier wird das Ob­jekt csv vom Typ Table er­schaf­fen. Die­ses Ob­jekt hat dann be­stimm­te Fä­hig­kei­ten. Man kann sie mit objektname.faehigkeit() (Punkt­schreib­wei­se) nut­zen:

z.B. csv.getInt(i, 2);

Wel­che Fä­hig­kei­ten das Ob­jekt hat, musst du der Do­ku­men­ta­ti­on ent­neh­men.

Auf­ga­be Im­ple­men­ta­ti­on:

Lade die Datei al­g12_bal­ken­dia­gram­m_csv:

  1. De­kla­rie­re ein Array zahlen für die Punk­te (wel­cher Typ ist ge­eig­net?). De­kla­rie­re ein Array namen für die Spie­ler­na­men (wel­cher Typ ist ge­eig­net?).

  2. Im­ple­men­tie­re die Me­tho­de ladeTabelle(String name). In­itia­li­sie­re dazu dort die Ar­rays in der rich­ti­gen Größe (siehe Ar­beits­blatt Zu­falls­zah­len) und fülle sie dann mit den Wer­ten aus der Ta­bel­le (siehe Schritt 3).

  3. Im­ple­men­tie­re die Me­tho­de zeichenBalken(), so dass das Bild wie oben dar­ge­stellt aus­sieht. Die Namen der Spie­ler musst du dazu aus dem Array namen her­aus­le­sen.

Tes­ten der Im­ple­men­ta­ti­on:

Da hier Daten aus einer ex­ter­nen Datei kom­men, kön­nen hier viele Feh­ler pas­sie­ren. Zum Bei­spiel könn­te die Datei gar nicht exis­tie­ren oder keine Über­schrif­ten ent­hal­ten.

  1. Über­le­ge dir noch zwei Feh­ler, die die Daten haben könn­ten.

  2. Ko­pie­re die Datei punk­te.csv, passe das Pro­gramm so an, dass deine Kopie ge­la­den wird, und ex­pe­ri­men­tie­re, was bei den Feh­lern pas­siert.

  3. Lies die Do­ku­men­ta­ti­on zum Be­fehl, der zum Laden der Datei ver­wen­det wird, und ver­su­che das Pro­gramm so an­zu­pas­sen, dass es mit einer Datei ohne Über­schrif­ten zu­recht kommt.

  4. Ver­su­che mög­lichst viele Feh­ler ab­zu­fan­gen (z.B. das Feh­len der Datei).

Ex­per­ten­auf­ga­be:

  1. Ko­pie­re dein Pro­gramm in ein Pro­gramm al­g12_bal­ken­dia­gram­m_xml. Lass dir die Datei punk­te.xml geben. Un­ter­su­che die XML-Datei und ver­su­che dein Pro­gramm mit Hilfe der Do­ku­men­ta­ti­on der Klas­se XML so an­zu­pas­sen, dass es in der Lage ist, die XML-Datei zu lesen.

 

 

Ex­ter­ne Daten: Her­un­ter­la­den [odt][138 KB]

Ex­ter­ne Daten: Her­un­ter­la­den [pdf][144 KB]

Hil­fe­kar­ten: Her­un­ter­la­den [odt][131 KB]

Hil­fe­kar­ten: Her­un­ter­la­den [pdf][121 KB]

 

Wei­ter zu Hil­fe­kar­ten 1