HSG

Aktuelle Seite: HSG/Fächer/Informatik/Algorithmus/Standard-Algorithmen

a,b ∈ IN, a>b ⇒ ggT(a,b) = ggT(a-b,b)

Beweis:

Sei g = ggT(a,b), dann gilt: g|a und g|b und t ≤ g für alle (∀) t mit t|a und t|b .

g|a und g|b bedeutet, es gibt (∃) na und nb ∈ IN mit der Eigenschaft, dass a = na⋅g und b = nb⋅g gilt. Wegen a>b gilt auch na > nb.

a-b = na⋅g - nb⋅g = (na - nb)⋅g ((na - nb) > 0) ⇒ g|(a-b)

Da auch g|b gilt, ist g ein gemeinsamer Teiler von a-b und b.

Sei nun t auch ein gemeinsamer Teiler von a-b und b, dann gibt es natürliche Zahlen n1 und n2 mit der Eigenschaft, dass (1) a-b = n1⋅t und (2) b = n2⋅t

Aus (1)+(2) folgt: a = (a-b)+b = (n1+n2)⋅t ⇒ t|a

Da auch t|b gilt, ist t ein gemeinsamer Teiler von a und b. Dann gilt nach Voraussetzung t ≤ g, dh. g = ggT(a-b,b) q.e.d.

Folgerung: ggT(a,b) = ggt(a mod b,b)

a mod b ist der Rest, der bleibt, wenn man b so oft wie möglich von a abgezogen hat. Falls a < b ist, geschieht das nullmal.

Struktogramm

Struktogrammeuklid.xml

Python-Realisierung

Python-Realisierung

Links

Valid XHTML 1.0!