Strukturierte Programmierung Uebungen Ferien: Unterschied zwischen den Versionen

Aus CCWiki
Zur Navigation springen Zur Suche springen
Keine Bearbeitungszusammenfassung
Keine Bearbeitungszusammenfassung
Zeile 1: Zeile 1:
# Genießt die Ferien
Wir wünschen euch schöne Ferien. Genießt die Freie Zeit aber Sie sollte auch genutzt werden um die Dinge zu festigen.
# Üben üben üben


Im folgenden finden sich ein paar Übungsbeispiele. Erledigt werden sollten:
Im folgenden finden sich ein paar Übungsbeispiele. Erledigt werden sollten:
# [[Strukturierte_Programmierung_Uebungen_Ferien#Aufgabe:_GameOfLife|GameOfLife]]
# [[Strukturierte_Programmierung_Uebungen_Ferien#Aufgabe:_GameOfLife|GameOfLife]]
# [[Strukturierte_Programmierung_Uebungen_Ferien#Aufgabe:_TicTacToe|TicTacToe]]
# [[Strukturierte_Programmierung_Uebungen_Ferien#Aufgabe:_TicTacToe|TicTacToe]]
Weiters bitte ich diejenigen, die noch offene Punkte in der [[https://matura.drlue.at/index.php/Selbstkontrolle_Strukturierte_Programmierung|Selbstkontrolle]] haben, nachzuholen. Die Bonusaufgabe in Punkt 4) muss nicht gemacht werden.


{{TOC limit|4}}
{{TOC limit|4}}

Version vom 22. Oktober 2021, 05:57 Uhr

Wir wünschen euch schöne Ferien. Genießt die Freie Zeit aber Sie sollte auch genutzt werden um die Dinge zu festigen.

Im folgenden finden sich ein paar Übungsbeispiele. Erledigt werden sollten:

  1. GameOfLife
  2. TicTacToe

Weiters bitte ich diejenigen, die noch offene Punkte in der [[1]] haben, nachzuholen. Die Bonusaufgabe in Punkt 4) muss nicht gemacht werden.

Aufgabe: GameOfLife

Aufgabe: TicTacToe

Implementiere das berühmte Spiel TicTacToe[2]. Erstelle dafür ein 2-dimensionales Array und Frage dabei wechselweise jeden Spieler nach einer Koordinate die gesetzt werden soll. Ist das Feld schon belegt, oder ist die Eingabe ungültig, so soll erneut nachgefragt werden. Prüfe zu jeder Runde ob das Spiel beendet und ein Sieger ermittelt werden kann.

Aufgabe: TicTacToe KI

Erweitere die vorhergehende Aufgabe so, dass gegen den Computer gespielt werden kann. Siehe MiniMax Algorithmus.

Aufgabe: Türme von Hanoi

Finde eine programmatische Lösung für die Türme von Hanoi[3].

Aufgabe: Hashsumme/Prüfsumme

Erstelle ein Programm welches die Prüfsumme einer gegebenen Datei berechnet und ausgibt. Hierbei kann auch gerne assets/file.txt verwendet werden. Nähere Informationen zur Hashsumme finden sich hier. Lies die Datei mithilfe eines FileInputStream:

FileInputStream in = new FileInputStream("assets/file.txt");
byte[] buffer = new byte[1024];
int read = 0;
while((read = in.read(buffer)) > 0) {
    //Digest aktualisieren           
}

Erstelle einen MessageDigest für MD5 und SHA256 und befülle diesen mit dem byte[] buffer. Instanzen von MessageDigest erhältst du mittels MessageDigest.getInstance([algorithm]). Um die Prüfsumme des MessageDigest lerbar zu machen verwende:

private static String toString(MessageDigest digest) {
    return new BigInteger(1,digest.digest()).toString(16);
}