Fibonacci-Berechnung korrigiert.

This commit is contained in:
2023-07-09 16:47:14 +02:00
parent 9956835ad9
commit 63fee8c895
7 changed files with 11 additions and 9 deletions

View File

@@ -5,7 +5,9 @@ import sys
def fib(n):
# Rekursionsbedingung
if n in [0,1]:
if n == 0:
return 0
elif n == 1:
return 1
else:
# Rekursionsaufruf

View File

@@ -21,7 +21,7 @@ def fib(n):
# Rekursionsbedingung
if n in [0,1]:
return 1
return n
else:
# Rekursionsaufruf
return fib(n-1) + fib(n-2)

Binary file not shown.

View File

@@ -6,7 +6,7 @@ def fib(n):
# Rekursionsbedingung
if n in [0,1]:
return 1
return n
else:
# Rekursionsaufruf
return fib(n-1) + fib(n-2)

View File

@@ -10,7 +10,7 @@ result5 = fib(5)
result8 = fib(8)
if result5 == 8 and result8 == 34:
if result5 == 5 and result8 == 21:
logging.info('Tests erfolgreich')
else:
logging.error('Tests fehlerhaft')

View File

@@ -20,17 +20,17 @@ class TestFib(unittest.TestCase):
# Die setUp() Methode wird zu Beginn jedes Testcases aufgrufen
def setUp(self):
logging.debug('setting up test')
self.results = [1,1,2,3,5,8,13,21,34,55]
self.results = [0,1,1,2,3,5,8,13,21,34,55]
#die beiden Tests aus ./testfib.py mit unittest
def test_fib(self):
# assertEqual(n,r) testet, ob das Resultat r der Vorgabe n entspricht.
self.assertEqual(8,fib(5))
self.assertEqual(34,fib(8))
self.assertEqual(5,fib(5))
self.assertEqual(21,fib(8))
def test_mult_fib(self):
results =[1,1,2,3,5,8,13,21,34,55]
results =[0,1,1,2,3,5,8,13,21,34,55]
for n in range(0,9):
self.assertEqual(results[n],fib(n))

View File

@@ -11,5 +11,5 @@ def fib_generator():
fibo = fib_generator()
for _ in range(int(sys.argv[1])):
for _ in range(int(sys.argv[1])+1):
print(next(fibo))