What is going on with the "return fibonacci( number-1 ) + fibonacci( number-2 )"?
Posted
by
user1478598
on Stack Overflow
See other posts from Stack Overflow
or by user1478598
Published on 2012-06-24T20:41:59Z
Indexed on
2012/06/24
21:16 UTC
Read the original article
Hit count: 333
I have problem understanding what the return fibonacci( number-1 ) + fibonacci( number-2 )
does in the following program:
import sys
def fibonacci( number ):
if( number <= 2 ):
return 1
else:
return fibonacci( number-1 ) + fibonacci( number-2 )
The problem is that I can't imagine how this line works:
return fibonacci( number-1 ) + fibonacci( number-2 )
Does the both of the "fibonacci( number-1 )" and "fibonacci( number-2 )" being processed at the same time? or the "fibonacci( number-1 )" is the first to be processed and then the second one?
I only see that processing both of them would eventually return '1' so the last result I expect to see it is a '1 + 1' = '2'
I would appreciate a lot, If someone can elaborately explain the process of its calculation.
I think this is a very newb question but I can't really get a picture of its process.
© Stack Overflow or respective owner