Fibonacci-Berechnung korrigiert.
This commit is contained in:
		| @@ -5,7 +5,9 @@ import sys | |||||||
| def fib(n): | def fib(n): | ||||||
|  |  | ||||||
| # Rekursionsbedingung | # Rekursionsbedingung | ||||||
|   if n in [0,1]: |   if n == 0: | ||||||
|  |     return 0 | ||||||
|  |   elif n == 1: | ||||||
|     return 1 |     return 1 | ||||||
|   else: |   else: | ||||||
| # Rekursionsaufruf | # Rekursionsaufruf | ||||||
|   | |||||||
| @@ -21,7 +21,7 @@ def fib(n): | |||||||
|  |  | ||||||
| # Rekursionsbedingung | # Rekursionsbedingung | ||||||
|   if n in [0,1]: |   if n in [0,1]: | ||||||
|     return 1 |     return n | ||||||
|   else: |   else: | ||||||
| # Rekursionsaufruf | # Rekursionsaufruf | ||||||
|     return fib(n-1) + fib(n-2) |     return fib(n-1) + fib(n-2) | ||||||
|   | |||||||
										
											Binary file not shown.
										
									
								
							| @@ -6,7 +6,7 @@ def fib(n): | |||||||
|  |  | ||||||
| # Rekursionsbedingung | # Rekursionsbedingung | ||||||
|   if n in [0,1]: |   if n in [0,1]: | ||||||
|     return 1 |     return n | ||||||
|   else: |   else: | ||||||
| # Rekursionsaufruf | # Rekursionsaufruf | ||||||
|     return fib(n-1) + fib(n-2) |     return fib(n-1) + fib(n-2) | ||||||
|   | |||||||
| @@ -10,7 +10,7 @@ result5 = fib(5) | |||||||
| result8 = fib(8) | result8 = fib(8) | ||||||
|  |  | ||||||
|  |  | ||||||
| if result5 == 8 and result8 == 34: | if result5 == 5 and result8 == 21: | ||||||
|   logging.info('Tests erfolgreich') |   logging.info('Tests erfolgreich') | ||||||
| else: | else: | ||||||
|   logging.error('Tests fehlerhaft') |   logging.error('Tests fehlerhaft') | ||||||
|   | |||||||
| @@ -20,17 +20,17 @@ class TestFib(unittest.TestCase): | |||||||
| # Die setUp() Methode wird zu Beginn jedes Testcases aufgrufen | # Die setUp() Methode wird zu Beginn jedes Testcases aufgrufen | ||||||
|   def setUp(self): |   def setUp(self): | ||||||
|     logging.debug('setting up test') |     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 | #die beiden Tests aus ./testfib.py mit unittest | ||||||
|   def test_fib(self): |   def test_fib(self): | ||||||
|  |  | ||||||
| # assertEqual(n,r) testet, ob das Resultat r der Vorgabe n entspricht. | # assertEqual(n,r) testet, ob das Resultat r der Vorgabe n entspricht. | ||||||
|     self.assertEqual(8,fib(5)) |     self.assertEqual(5,fib(5)) | ||||||
|     self.assertEqual(34,fib(8)) |     self.assertEqual(21,fib(8)) | ||||||
|  |  | ||||||
|   def test_mult_fib(self): |   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): |     for n in range(0,9): | ||||||
|      self.assertEqual(results[n],fib(n)) |      self.assertEqual(results[n],fib(n)) | ||||||
|   | |||||||
| @@ -11,5 +11,5 @@ def fib_generator(): | |||||||
| fibo = fib_generator() | fibo = fib_generator() | ||||||
|  |  | ||||||
|  |  | ||||||
| for _ in range(int(sys.argv[1])): | for _ in range(int(sys.argv[1])+1): | ||||||
|   print(next(fibo)) |   print(next(fibo)) | ||||||
|   | |||||||
		Reference in New Issue
	
	Block a user