Strukturierte Programmierung Uebungen Ferien: Unterschied zwischen den Versionen

Aus CCWiki
Zur Navigation springen Zur Suche springen
Zeile 2: Zeile 2:


=== Aufgabe: TicTac KI ===
=== Aufgabe: TicTac KI ===
[[https://www.geeksforgeeks.org/minimax-algorithm-in-game-theory-set-3-tic-tac-toe-ai-finding-optimal-move/]]
Erweitere die vorhergehende Aufgabe so, dass gegen den Computer gespielt werden kann. Siehe [https://www.geeksforgeeks.org/minimax-algorithm-in-game-theory-set-3-tic-tac-toe-ai-finding-optimal-move/ MiniMax Algorithmus].


=== Aufgabe: Türme von Hanoi ===
=== Aufgabe: Türme von Hanoi ===

Version vom 22. Oktober 2021, 05:38 Uhr

Aufgabe: TicTacToe

Aufgabe: TicTac KI

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

Aufgabe: Türme von Hanoi

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 [[1]]. 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);
}