Aufgaben

== Aufgaben
  1. Schreibe das Programm Namen, das alle Zeilen der Datei namen.txt ausgibt.

    Zur Lösung

[start=1] . Schreibe das Programm _Namen_, das alle Zeilen der Datei _namen.txt_ ausgibt. + <<tags_a, Zur Lösung>>

Dateiname

namen.txt

Größe in Bytes

148

Einfügezeitpunkt

17.12.2017, 13:34:32

Lösung zu Namen

In diesem Fall kann das Beispielprogramm aus der Beschreibung direkt übernommen werden:

try(BufferedReader br=new BufferedReader(new FileReader("Pfad meiner Datei"))){
    String zeile="";
    while ((zeile=br.readLine())!=null){
        System.out.println(zeile);
    }
} catch (Exception e){
    System.out.println("Ein Fehler ist beim Öffnen der Datei aufgetreten.");
}
Java
=== Lösung zu _Namen_ In diesem Fall kann das Beispielprogramm aus der Beschreibung direkt übernommen werden: [source,java,indent=0] ---- try(BufferedReader br=new BufferedReader(new FileReader("Pfad meiner Datei"))){ String zeile=""; while ((zeile=br.readLine())!=null){ System.out.println(zeile); } } catch (Exception e){ System.out.println("Ein Fehler ist beim Öffnen der Datei aufgetreten."); } ----
  1. Schreibe das Programm Durchschnitt, das den Mittelwert aller Zahlen in der Datei zahlen.txt ausgibt.

    Verwende dabei den Befehl double Double.parseDouble(String s), der, falls möglich, einen String in eine double-Variable umwandelt.

    Zur Lösung

[start=2] . Schreibe das Programm _Durchschnitt_, das den Mittelwert aller Zahlen in der Datei _zahlen.txt_ ausgibt. + Verwende dabei den Befehl `double Double.parseDouble(String s)`, der, falls möglich, einen String in eine double-Variable umwandelt. + <<tags_b,Zur Lösung>>

Dateiname

zahlen.txt

Größe in Bytes

167

Einfügezeitpunkt

17.12.2017, 13:41:30

Lösung zu Durchschnitt

try (BufferedReader br = new BufferedReader(new FileReader("C:\\Users\\menze\\Desktop/zahlen.txt"))) {
    String zeile = "";
    double summe = 0;
    int zaehler = 0;
    while ((zeile = br.readLine()) != null) {
        summe += Double.parseDouble(zeile); (1)
        zaehler++; (2)
    }
    System.out.println("Durchschnitt: " + (summe / zaehler));
} catch (Exception e) {
    e.printStackTrace();
}
Java
=== Lösung zu _Durchschnitt_ [source,java,indent=0] ---- try (BufferedReader br = new BufferedReader(new FileReader("C:\\Users\\menze\\Desktop/zahlen.txt"))) { String zeile = ""; double summe = 0; int zaehler = 0; while ((zeile = br.readLine()) != null) { summe += Double.parseDouble(zeile); //<1> zaehler++; //<2> } System.out.println("Durchschnitt: " + (summe / zaehler)); } catch (Exception e) { e.printStackTrace(); } ----
1 Wandle die aktuelle Zeile in eine double-Zahl um und zähle den Wert zu summe hinzu.
2 Zähle, wie viele Zahlen eingelesen wurden.
<1> Wandle die aktuelle Zeile in eine double-Zahl um und zähle den Wert zu `summe` hinzu. <2> Zähle, wie viele Zahlen eingelesen wurden.
  1. Schreibe das Programm RateSpiel, bei dem sich das Programm eine ganze Zahl zwischen 0 und 100 "denkt" und nach jeder Eingabe des Benutzers einen Tipp abgibt, ob die eingegebene Zahl zu groß oder zu klein ist.

    Zur Lösung

[start=3] . Schreibe das Programm _RateSpiel_, bei dem sich das Programm eine ganze Zahl zwischen 0 und 100 "denkt" und nach jeder Eingabe des Benutzers einen Tipp abgibt, ob die eingegebene Zahl zu groß oder zu klein ist. + <<tags_c,Zur Lösung>>

Lösung zu RateSpiel

int gedachteZahl = (int) (Math.random() * 100); (1)

try (Scanner sc = new Scanner(System.in)) {
    int getippteZahl = -1; (2)
    while (getippteZahl != gedachteZahl) { (3)
        System.out.println("Bitte gib eine Zahl ein: ");
        getippteZahl = sc.nextInt();
        if (getippteZahl > gedachteZahl) {
            System.out.println("Zahl zu groß");
        } else if (getippteZahl < gedachteZahl) {
            System.out.println("Zahl zu klein");
        }
    }
    System.out.println("Gratulation, du hast gewonnen!");
}
Java
=== Lösung zu _RateSpiel_ [source,java,indent=0] ---- int gedachteZahl = (int) (Math.random() * 100); //<1> try (Scanner sc = new Scanner(System.in)) { int getippteZahl = -1; //<2> while (getippteZahl != gedachteZahl) { //<3> System.out.println("Bitte gib eine Zahl ein: "); getippteZahl = sc.nextInt(); if (getippteZahl > gedachteZahl) { System.out.println("Zahl zu groß"); } else if (getippteZahl < gedachteZahl) { System.out.println("Zahl zu klein"); } } System.out.println("Gratulation, du hast gewonnen!"); } ----
1 Das Programm denkt sich eine zufällige Zahl zwischen 0 und 100.
2 Die vom Benutzer eingegeben Zahl wird zunächst auf -1 gesetzt, damit die while-Schleife starten kann.
3 Das Programm läuft so lange, bis der Benutzer die richtige Zahl eingibt.
<1> Das Programm _denkt_ sich eine zufällige Zahl zwischen 0 und 100. <2> Die vom Benutzer eingegeben Zahl wird zunächst auf -1 gesetzt, damit die while-Schleife starten kann. <3> Das Programm läuft so lange, bis der Benutzer die richtige Zahl eingibt.

Zurück zu den Aufgaben

<<tags_@, Zurück zu den Aufgaben>>