[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