Wozu braucht man den Dreieckstausch?
Beim Programmieren kann es vorkommen, dass man den Inhalt zweier Variablen vertauschen muss, wie zum Beispiel beim Sortieren.
Man kann nicht einfach a=b und danach b=a schreiben, da nach dem ersten Befehl a mit b überschrieben ist und der Wert nicht mehr existiert.
Man muss also eine dritte Variable hernehmen, die solange den Wert von a aufnimmt, bis der Tausch vollendet ist.
Der Algorithmus sieht dann folgendermassen aus:
p = a
a = b
b = p
Hier habe ich ein Beispiel in Python in dem der Dreieckstausch angewendet wird:
a=int(input(“erste zahl: “))
b=int(input(“zweite zahl: “))
c=int(input(“dritte zahl: “))
if (a > b ) and (a > c ): # a ist die groesste Zahl
e = c
c = a
a = e
print(” die groesste zahl ist a “)
if (b > a and b > c ): # b ist die groesste Zahl
e = c
c = b
b = e
print(“die groesste zahl ist b”)
else:
print(“die groesste zahl ist c”)
if (b < a and b < c): # b ist die kleinste Zahl
e = a
a = b
b = e
if (c < a and c < b ):
e = a
a = c
c = e
print(“Reihenfolge: “, a, b, b)