ffprog:ffprogjava2016:inputoutput

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
ffprog:ffprogjava2016:inputoutput [2016/09/09 10:57]
Ivo Blöchliger [Input / Output]
ffprog:ffprogjava2016:inputoutput [2016/09/11 21:05] (current)
Ivo Blöchliger [SOI - Aufgaben]
Line 1: Line 1:
 {{backlinks>.}} {{backlinks>.}}
-==== Input / Output ==== +===== Input / Output ===== 
-=== Konsole === +==== Konsole ==== 
-Output auf die Konsole:+=== Output auf die Konsole ===
 <code java> <code java>
         int a = 24;         int a = 24;
Line 23: Line 23:
 Mehr Infos auf https://docs.oracle.com/javase/8/docs/api/java/util/Formatter.html Mehr Infos auf https://docs.oracle.com/javase/8/docs/api/java/util/Formatter.html
  
-Eingabe auf der Konsole:+=== Eingabe auf der Konsole ===
 <code java> <code java>
         // Eingabe. Scanner auf System.in (Konsolen-Eingabe)         // Eingabe. Scanner auf System.in (Konsolen-Eingabe)
Line 36: Line 36:
 </code> </code>
  
-=== Textdateien ===+==== Textdateien ====
 Hinweis: Operationen mit Dateien können Fehler verursachen (z.B. weil die Datei nicht (mehr) existiert). Diese Fehler können entweder abgefangen werden (mit try / catch) oder "ignoriert" werden, indem man die main-Methode wie folgt erweitert: Hinweis: Operationen mit Dateien können Fehler verursachen (z.B. weil die Datei nicht (mehr) existiert). Diese Fehler können entweder abgefangen werden (mit try / catch) oder "ignoriert" werden, indem man die main-Methode wie folgt erweitert:
 <code java> <code java>
Line 53: Line 53:
 </code> </code>
  
-**Ausgabe in eine Datei**. Ohne absolute Pfadangabe landen die Dateien im aktuellen Projekt-Verzeichnis.+=== Ausgabe in eine Datei === 
 +Ohne absolute Pfadangabe landen die Dateien im aktuellen Projekt-Verzeichnis.
 <code java> <code java>
         // Ausgabe in Datei         // Ausgabe in Datei
Line 65: Line 66:
 </code> </code>
  
-**Lesen aus einer Datei**.+=== Lesen aus einer Datei ===
 <code java> <code java>
         int x;         int x;
         int y;         int y;
 +        Path datei = Paths.get("ausgabe.txt");
         // Datei öffnen und in einen Scanner einbinden         // Datei öffnen und in einen Scanner einbinden
         // Scanner und Datei werden am Ende vom try-Block automatisch geschlossen.         // Scanner und Datei werden am Ende vom try-Block automatisch geschlossen.
Line 77: Line 79:
         System.out.format("Aus Datei: %d und %d%n", x,y);         System.out.format("Aus Datei: %d und %d%n", x,y);
 </code> </code>
 +
 +===== Aufgaben =====
 +==== Addition ====
 +Gegeben ist eine Text-Datei mit einer positiven natürlichen Zahl pro Zeile. 
 +Die erste Zahl gibt an, wie viele Serien in der Datei gespeichert sind.
 +Für jede Serie gibt die erste Zahl an, wie viele Zahlen gespeichert sind.
 +
 +Die Ausgabe (auf die Konsole) ist ebenfalls eine Zahl pro Zeile, die der Summe aller Zahlen einer Serie entspricht.
 +Beispiel: (2 Serien, die erste mit 3 Zahlen (1,2,3), die zweite mit 2 Zahlen (1,2)):
 +<code text>
 +2
 +3
 +1
 +2
 +3
 +2
 +1
 +2
 +</code>
 +Das korrekte Resultat in diesem Fall wäre:
 +<code text>
 +6
 +3
 +</code>
 +Beispieldateien:
 +  * Input: {{ :ffprog:ffprogjava2016:other.txt |other.txt}}. Korrekter Output: {{ :ffprog:ffprogjava2016:other-sol.txt |other-sol.txt}}
 +  * Input: {{ :ffprog:ffprogjava2016:simple.txt |simple.txt}}. Korrekter Output: {{ :ffprog:ffprogjava2016:simple-lsg.txt |simple-lsg.txt}}
 +
 +
  • ffprog/ffprogjava2016/inputoutput.1473411468.txt.gz
  • Last modified: 2016/09/09 10:57
  • by Ivo Blöchliger