[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
## Re: [gforth] naive fibonacci

**From**: |
Terrence Brannon |

**Subject**: |
Re: [gforth] naive fibonacci |

**Date**: |
Sat, 6 Mar 2010 21:51:46 -0500 |

On Sat, Mar 6, 2010 at 9:36 PM, Dennis Ruffer <address@hidden> wrote:
>*> -----Original Message-----*
>*> From: address@hidden [mailto:gforth-*
>*> address@hidden On Behalf Of Terrence Brannon*
>*> But I would like to know why mine does not work:*
>* Remember that n is left on the stack after the last ENDOF, so you end up*
>* putting it on again.*
I removed one reference to n, but I get a Stack underflow:
: fib { n -- fibn }
assert( n 0>= )
n CASE
0 OF 0 ENDOF
1 OF 1 ENDOF
2 OF 1 ENDOF
( otherwise ) 1 - recurse n 2 - recurse +
ENDCASE ;
>
>* Not sure why you want 2 recurse's either or the other n 2 -.*
Because the nth Fibonacci number is the sum of the prior two Fibonacci numbers:
F(n) = F(n-1) + F(n-2)
So naively, you simply (and redundantly and with no memoization)
calculate F(n-1) and add that to F(n-2)
>
>* I can't follow the logic, but then the people in that shootout are much*
>* better at it than I am. ;)*
I was actually trying a Counted loops exercise -
http://www.complang.tuwien.ac.at/forth/gforth/Docs-html/Counted-loops-Tutorial.html

**[gforth] naive fibonacci**, *Terrence Brannon*, `2010/03/06`
**RE: [gforth] naive fibonacci**, *Dennis Ruffer*, `2010/03/06`
**Re: [gforth] naive fibonacci**,
*Terrence Brannon* **<=**

**Re: [gforth] naive fibonacci**, *Elko Tchernev*, `2010/03/06`
**Re: [gforth] naive fibonacci**, *Terrence Brannon*, `2010/03/07`
**Re: [gforth] naive fibonacci**, *Elko Tchernev*, `2010/03/07`
**RE: [gforth] naive fibonacci**, *Dennis Ruffer*, `2010/03/07`
**Re: [gforth] List strangeness**, *Elko Tchernev*, `2010/03/07`
**RE: [gforth] List strangeness**, *Dennis Ruffer*, `2010/03/07`
**Re: [gforth] List strangeness**, *Anton Ertl*, `2010/03/08`
**Re: [gforth] List strangeness**, *Elko Tchernev*, `2010/03/08`