1. Lehrplan

2. 2022-09-22

Java Quellcode
public class HelloWorld {
  public static void main(String[] args) {
    System.out.println("Hello World, 1ahitm!");
  }
}
Zunächst wird der Quellcode compiliert
javac HelloWorld.java
Man erhält ein class-File
ls -lh
Ausgabe am Bildschirm
drwxr-xr-x   4 stuetz  staff   128B Sep 28 10:01 .
drwxrwxrwx@ 25 stuetz  staff   800B Sep 26 09:45 ..
-rw-r--r--   1 stuetz  staff   432B Sep 28 10:01 HelloWorld.class
-rw-r--r--   1 stuetz  staff   121B Sep 15 09:44 HelloWorld.java
java HelloWorld
Ausgabe am Bildschirm
Hello World, 1ahitm!

3. 2022-09-28 (Mi.)

  • Supplierung Prof. Köck

import java.util.Scanner;

public class Ue01_HelloWorld {
    public static void main(String[] args) {
        // Delaration einer Variable:
        //    Anlegen einer neuen Variable
        //    mit dem Namen 'name'
        //    vom Typ 'String'
        String name;
        // Zuweisung eines Werts zu einer Variable
        name = "Johann";

        // Alternative: Deklaration und Erstzuweisung in einer Anweisung
        // String name = "Johann";

        // Ask user for his/her name
        System.out.print("What's your name? ");
        Scanner sc = new Scanner(System.in);
        name = sc.nextLine();



        // + ist ein Textverknüpfungs-Operator
        System.out.println("Hello, " + name + "!");
    }
}
import java.util.Scanner;

public class Ue02_AddNumbers {

    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);

        //Zahlen-Datentyp
        //int number1;
        //sc.nextInt();

        // Gib die 1. Zahl ein: 13
        // Gib die 2. Zahl ein: 17
        // 13 + 17 = 30

        // Declare variables
        int number1;
        int number2;
        int sum;

        // Get numbers from user
        System.out.print("Gib die 1. Zahl ein: ");
        number1 = sc.nextInt();
        System.out.print("Gib die 2. Zahl ein: ");
        number2 = sc.nextInt();

        // Calculate sum
        sum = number1 + number2;

        // Print calculation and result
        System.out.println(number1 + number2 + " = " + sum);

        // Wenn fertig:
        // Neues Projekt: Ue03_Waehrungsumrechnung
        // EURO-Betrag wird eingelesen und in GBP und USD umgewandelt
        // Aktuelle Wechselkurs im Internet recherchieren
    }
}

4. 2022-09-29 (Do.)

  • Praktischer Unterricht mit Aistleitner, Köck, Stütz

  • Anmelden bei github

5. 2022-10-04 (Di.)

  • Was ist ein Variable: 02 Grundlagen.pdf

6. 2022-10-04

  • Grundlagen der Formatierung (System.out.printf(…​))

  • Auschecken der Übung

  • Öffnen in der IDE

7. 2022-10-05 (Supplierung Prof. Köck)

Angabe Turmrechnen

Schreiben Sie ein Programm, das eine ganze Zahl einliest und für diese Zahl eine Turmrechnung durchführt und alle Zwischenergebnisse ausgibt.

Bei der Turmrechnung wird die eingegebene Basiszahl mit 2, 3, … 9 der Reihe nach multipliziert, anschließend durch 2, 3, … 9 dividiert, sodass am Ende wieder die Basiszahl entsteht.

Hinweise:

  • Nutzen Sie nur die im Unterricht verwendeten Programmkonzepte!

  • Verwenden Sie einen möglichst großen, ganzzahligen Datentyp!

  • Fehler, welche durch eine zu große Basiszahl verursacht werden, können ignoriert werden!

  • Beachten Sie die Abgaberichtlinien!

Beispielausgabe:
Bitte Zahl eingeben: 1234

Turmrechnung
============
1234 | *2
2468 | *3
7404 | *4
29616 | *5
148080 | *6
888480 | *7
6219360 | *8
49754880 | *9
447793920 | /2
223896960 | /3
74632320 | /4
18658080 | /5
3731616 | /6
621936 | /7
88848 | /8
11106 | /9
1234

Turmrechnung formatiert
=======================
            1234  | * 2
            2468  | * 3
            7404  | * 4
           29616  | * 5
          148080  | * 6
          888480  | * 7
         6219360  | * 8
        49754880  | * 9
       447793920  | / 2
       223896960  | / 3
        74632320  | / 4
        18658080  | / 5
         3731616  | / 6
          621936  | / 7
           88848  | / 8
           11106  | / 9
            1234  |
Source Code Turmrechnen
import java.util.Scanner;

public class Ue04_Turmrechnen {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);

        // get base-number from user
        System.out.print("Bitte Zahl eingeben: ");
        long number = sc.nextLong();

        // calculation
        System.out.println("");
        System.out.println("Turmrechnung");
        System.out.println("============");
        System.out.println(number + " | *" + 2 );
        number = number * 2;
        System.out.println(number + " | *" + 3 );
        number = number * 3;
        System.out.println(number + " | *" + 4 );
        number = number * 4;
        System.out.println(number + " | *" + 5 );
        number = number * 5;
        System.out.println(number + " | *" + 6 );
        number = number * 6;
        System.out.println(number + " | *" + 7 );
        number = number * 7;
        System.out.println(number + " | *" + 8 );
        number = number * 8;
        System.out.println(number + " | *" + 9 );
        number = number * 9;
        System.out.println(number + " | /" + 2 );
        number = number / 2;
        System.out.println(number + " | /" + 3 );
        number = number / 3;
        System.out.println(number + " | /" + 4 );
        number = number / 4;
        System.out.println(number + " | /" + 5 );
        number = number / 5;
        System.out.println(number + " | /" + 6 );
        number = number / 6;
        System.out.println(number + " | /" + 7 );
        number = number / 7;
        System.out.println(number + " | /" + 8 );
        number = number / 8;
        System.out.println(number + " | /" + 9 );
        number = number / 9;
        System.out.println(number);

        // calculation with format
        System.out.println("");
        System.out.println("Turmrechnung formatiert");
        System.out.println("=======================");
        System.out.printf("%16d  | * %d%n" , number,  2 );
        number = number * 2;
        System.out.printf("%16d  | * %d%n" , number,  3 );
        number = number * 3;
        System.out.printf("%16d  | * %d%n" , number,  4 );
        number = number * 4;
        System.out.printf("%16d  | * %d%n" , number,  5 );
        number = number * 5;
        System.out.printf("%16d  | * %d%n" , number,  6 );
        number = number * 6;
        System.out.printf("%16d  | * %d%n" , number,  7 );
        number = number * 7;
        System.out.printf("%16d  | * %d%n" , number,  8 );
        number = number * 8;
        System.out.printf("%16d  | * %d%n" , number,  9 );
        number = number * 9;
        System.out.printf("%16d  | / %d%n" , number,  2 );
        number = number / 2;
        System.out.printf("%16d  | / %d%n" , number,  3 );
        number = number / 3;
        System.out.printf("%16d  | / %d%n" , number,  4 );
        number = number / 4;
        System.out.printf("%16d  | / %d%n" , number,  5 );
        number = number / 5;
        System.out.printf("%16d  | / %d%n" , number,  6 );
        number = number / 6;
        System.out.printf("%16d  | / %d%n" , number,  7 );
        number = number / 7;
        System.out.printf("%16d  | / %d%n" , number,  8 );
        number = number / 8;
        System.out.printf("%16d  | / %d%n" , number,  9 );
        number = number / 9;
        System.out.printf("%16d  |%n" , number );
    }
}

8. 2022-10-13 (Do.)

8.1. Verzweigungen

  • = → Zuweisung, zB age = 18;

  • == → Vergleich zB if (a == b) { …​ }

    • bei Zeichenketten equals verwenden!!!

  • IDE

    • Integrierte Entwicklungsumgebung

    • Integrated Development Environment

8.2. Modulo - Operator

  • Der Operator für eine Division ist ein /

    • zB int teiler = 10 % 2;

  • Es gibt auch einen Operator, um den Rest einer Division zu erhalten:

    • Modulo-Operator → %

    • int divisionsrest = 10 / 3;

9. 2022-10-20 - LZK und Schleifen

Gerade Zahlen
public class GeradeZahlen {
    public static void main(String[] args) {

        // Deklaration
        int zahl = 1;

        // Verarbeitung

        // WHILE-Schleife
        while (zahl < 100) {
            if (zahl % 2 == 0) {
                System.out.println(zahl);
            }
            zahl++;
        }

        // FOR-Schleife
        for (zahl = 1; zahl < 100; zahl++) {
            if (zahl % 2 == 0) {
                System.out.println(zahl);
            }
        }

        // performantere Alternative
        for (zahl = 2; zahl < 100; zahl+=2) {
            System.out.println(zahl);
        }


        // do-while - Schleife
        zahl = 2;
        do {
            System.out.println(zahl);
            zahl = zahl + 2;
        } while(zahl < 100);


        // Ausgabe
    }
}
  • Validierung → auf Gültigkeit prüfen

Eingabevalidierung
import java.util.Scanner;

public class Eingabevalidierung {
    public static void main(String[] args) {
        // Deklaration
        int jahr;
        Scanner scanner = new Scanner(System.in);

        // Eingabe
        // Jahr zw. 2000 und 2020

        do {
            System.out.print("Geben Sie ein Jahr größer 2000 ein: ");
            jahr = scanner.nextInt();
        }while (jahr <= 2000);

        // Verarbeitung

        // Ausgabe
        System.out.println(jahr);
    }
}

10. 2022-11-08 Schreibtischtest

  • Warum Schreibtischtest?

  • Wie sieht ein Schreibtischtest aus?

  • Wie sieht ein Programmablaufplan aus

public class Fibonacci {

    public static void main(String[] args) {

        int n1 = 0;
        int n2 = 1;
        int summe = 1;

        for (int i = 1; i <= 20; i++) {
            System.out.printf("F(%d): %d%n", i,  summe);
            summe = n1 + n2;
            n1 = n2;
            n2 = summe;
        }


    }
}
Variablentausch
int links = 5;
int rechts = 3;
int hand_von_chipmunk = 0;

hand_von_chipmunk = rechts;
rechts = links;
links = hand_von_chipmunk;

System.out.println("rechts = " + rechts);
System.out.println("links = " + links);

11. 2022-11-10

schreibtischtest ziffernsumme
public class DigitSum {

    public static void main(String[] args) {

        int zahl = 12345;
        int original_zahl = zahl;
        int rest = 0;
        int summe = 0;

        while (zahl > 0) {
            rest = zahl % 10;
            summe = summe +rest;
            zahl = zahl / 10;
        }

        System.out.printf("Die Ziffernsumme von %d ist %d", original_zahl, summe);
    }
}

12. 2022-11-24 Do.

public class Alphabet {
    public static void main(String[] args) {
        String alphabet = "";
        String eingabe;
        int diff = 0;

        Scanner scanner = new Scanner(System.in);
        System.out.print("Umwandeln in Großbuchstaben (J/N)? ");
        eingabe = scanner.nextLine();

        if (eingabe.charAt(0)=='J' || eingabe.charAt(0)=='j') {
            // Alternativ: eingabe.equalsIgnoreCase("J")
            diff = 'a' - 'A'; // 32;
        }

        for (char c='a'; c<='z'; c++) {
            alphabet = alphabet + (char)(c-diff) + "(" + (int)(c-diff) + ") ";
        }

        System.out.println(alphabet);
    }
}

13. 2022-12-09 Förderkurs

Table 1. Triangle
Variante 1 Variante 2
public static void main(String[] args) {

    for (int j = 1; j <= 7; j++) {
        for (int i = 0; i < j; i++) {
            System.out.print("*");
        }
        System.out.println();
        //System.out.println(j);
    }
    for (int i = 0; i < 6; i++) {
        for (int j = 1; j <= 6-i; j++) {
            System.out.print("*");
        }
        System.out.println();
    }
}
    public static void main(String[] args) {

    for (int j = 1; j <= 7; j++) {
        for (int i = 0; i < j; i++) {
            System.out.print("*");
        }
        System.out.println();
        //System.out.println(j);
    }
    for (int i = 7; i > 0; i--) {
        for (int j = 1; j < i; j++) {
            System.out.print("*");
        }
        System.out.println();
    }
}
Ausgabe
*
**
***
****
*****
******
*******
******
*****
****
***
**
*
Ziffernsumme
public static void main(String[] args) {

    int zahl = 12345;
    int summe = 0;

    while(zahl > 0){
        int rest = zahl % 10;
        summe = summe + rest;
        zahl = zahl / 10;
    }
    System.out.println(summe);
}
Ausgabe
15
Zähle die Anzahl der 'e'
public static void main(String[] args) {
    String text = "Heute schneit es";
    int counter = 0;

    for (int i = 0; i < text.length(); i++) {
        //System.out.println(text.charAt(i));
        if (text.charAt(i) == 'e') {
            counter++;
        }
    }
    System.out.println(counter);
}
Ausgabe
4

14. 2022-12-13

14.1. Aufgabe: erstellen sie zu folgendem Programmcode einen Schreibtischtest

  • Ihre Wertetabelle soll dabei folgende Spalten haben:

    • input

    • output

    • delete

    • delete.charAt(i))

    • input.charAt(j)

Achten Sie darauf, für jede Zeile die ausgeführt wird in der Tabelle die korrekten Werte einzutragen.
public static void main(String[] args) {
    String input = "halloxhallo";
    String delete = "aox";
    String output = "";

    for (int i = 0; i < delete.length(); i++) {
        output = "";
        for (int j = 0; j < input.length(); j++) {
            if (input.charAt(j) != delete.charAt(i)) {
                output = output + input.charAt(j);
            }
        }
        input = output;
    }
    System.out.println(output);
}

15. 2023-01-17

import java.util.Scanner;

public class Main {

    static Scanner in = new Scanner(System.in);

    public static void main(String[] args) {
        String text = foo();
        System.out.println("-> " + text);

    }

    static String foo() {
        System.out.print("Text: ");
        return in.nextLine();
    }
}

16. 2023-01-24

public class Main {
    public static void main(String[] args) {
        String text = "He went to school";
        System.out.println(countVocals(text));
        System.out.println(isVocal('b'));
        System.out.println(isVocal('i'));
    }

    static int countVocals(String word) {
        int counter = 0;
        for (int i = 0; i <word.length(); i++) {
            if (isVocal(word.charAt(i))) {
                counter++;
            }

        }
        return counter;
    }

    /**
     * checks, if the character "zeichen" is a vocal
     *
     * @param zeichen
     * @return
     */
    static boolean isVocal(char zeichen) {
        String vocals = "aeiou";
        for (int i = 0; i <vocals.length(); i++) {
            if (zeichen == vocals.charAt(i)) {
                return true;
            }
        }
        return false;
    }
}

17. 2023-01-31

        boolean istSonnig = false;
        boolean habeHausuebungZuMachen = true;
        boolean habeGuteRegenbekleidung = false;

        System.out.println("istSonnig: " + istSonnig);
        System.out.println("nicht istSonnig: " + !istSonnig);

        if (istSonnig && habeHausuebungZuMachen) {
            System.out.println("Ich mache meine HÜ in der guten Stube");
        } else {
            System.out.println("ich gehe in den Garten");
        }

        if (istSonnig || habeGuteRegenbekleidung) {
            System.out.println("Gehe ich in den Garten");
        } else {
            System.out.println("Bleibe in der guten Stube");
        }

18. 2023-03-09

methodenbestandteile
  • Übung Tankfüllung

  • Übung verschiedene Beispiele