In diesem Beispiel wird die Fakultät berechnet. Dies kann auf zwei verschiedene Weisen geschehen.

1. Iteration (Funktion ruft sich NICHT selbst auf)

def fakultaet(x):
    erg = 1
    while(x > 1):  
        erg *= x
        x -= 1
    return erg

print(fakultaet(int(input("Bitte geben Sie eine Zahl ein um ihren Fakultaetswert zu berechnen.\n"))))
        

# spezielle Rechenoperatoren
# x = x + 1  <->  x += 1   (x wird um eins erhöht, d.h. inkrementiert)
# x = x * 3  <->  x *= 3   (x wird mit 3 multipliziert)
# x = x - 1  <->  x -= 1   (x wird um eins verkleinert, d.h. dekrementiert)
# x = x / 2  <->  x /= 2   (x wird durch 2 geteilt)


# Startwert x | Nummer Schleifendurchlauf | erg | x
#-------------|---------------------------|-----|---
#     3       |             0.            |  1  | 3
#             |             1.            |  3  | 2
#             |             2.            |  6  | 1


2. Rekursion (Funktion ruft sich selbst auf)

def fakultaet(x):
    if x > 1:
        return x * fakultaet(x - 1)
    else:
        return 1

print(fakultaet(int(input("Bitte geben Sie eine Zahl ein um ihren Fakultaetswert zu berechnen.\n"))))

# Startwert x | Aufruf der Funktion      
#-------------|----------------------
#     3       |         1.           
#     2       |         2.           
#     1       |         3.           

Last modified: Monday, 26 January 2015, 1:35 PM