Java GGT – größter gemeinsamer Teiler

Der größte gemeinsame Teiler (GGT) wird in der Informatik oft für Verschlüsselungen und anderen Anwendungen verwendet. Ein Beispiel wäre der RSA-Verschlüsselungsalgorithmus.

Java GGT

In dem Snippet wird der größte gemeinsame Teiler von zwei Zahlen, mittels der Modulo-Rechnung ermittelt. Die Methode ggt(int a, int b) ermittelt als erstes die kleinste Zahl, damit der Rechenaufwand nicht alzu hoch wird. So bald wie der größte gemeinsame Teiler gefunden wurde, wird dieser zurückgegeben. Sollte es keinen größten gemeinsamen Teiler geben, so ist immer der Teiler gleich 1.

Das Snippet arbeitet nur mit Integer-Werten. Innerhalb der For-Schleife wird solange runtergezählt bis ein größter gemeinsamer Teiler gefunden wurde. Hierbei wird die Modulo-Rechnung verwendet. Wenn die beiden Zahlen sich durch i ohne Rest teilen lassen, dann ist i der größte gemeinsame Teiler.

Anwendungsbeispiel

Mit dem größtem gemeinsamen Teiler können Elemente von Verschlüsselungsalgorithmen berechnet werden, zum Beispiel wie beim RSA.