Fakultät mit for/while -Schleife?
Servus,
ich versuche ein Python-Programm zu ertsellen, bei der man die Fakultät berechnen kann. Dabei dürfen nur for (+range) Schleifen oder einer while Schleife benutzt werden, also nichts darf importiert werden Hat jemand Tipps für mich?
3 Antworten
Ein Ansatz könnte ungefähr so aussehen:
n = 5
#if n <= 1: print 1
#else:
n += 1
x = 1
for i in range(2, n):
x*= i
#i = 2
#while i <= n:
#x*= i
print ("Fakultät von ", str(n), " ist ", str(x))
Rechne 2-3 erdachte, konkrete Fakultätsaufgaben aus und beschreibe dazu dann den generellen Rechenweg Schritt für Schritt.
1) addiere dies
2) subtrahiere jenes
3) multipliziere so oft, wie ...
4) ...
Beachte auch Sonderfälle, bspw. das Ergebnis von 0!.
Bei Bedarf kannst du dir zusätzlich noch ein Aktivitätsdiagramm anlegen. Das Ergebnis kannst du folgend in Python-Code übersetzen und testen.
Du brauchst weder Schleifen noch Importe, wenn du einfach die Definition der Fakultät mittels Rekursion implementierst:
0! = 1,
n! = n * (n-1)!