Thread overview | |||||||
---|---|---|---|---|---|---|---|
|
March 04, 2012 [Issue 7646] New: bug in code sample and unittest | ||||
---|---|---|---|---|
| ||||
http://d.puremagic.com/issues/show_bug.cgi?id=7646 Summary: bug in code sample and unittest Product: D Version: D2 Platform: All OS/Version: All Status: NEW Severity: trivial Priority: P2 Component: websites AssignedTo: nobody@puremagic.com ReportedBy: josvanuden@gmail.com --- Comment #0 from josvanuden@gmail.com 2012-03-04 11:59:48 PST --- The following sample code on std.functional contains a bug. http://dlang.org/phobos/std_functional.html#memoize ulong fib(ulong n) { alias memoize!fib mfib; return n < 2 ? 1 : mfib(n - 2) + mfib(n - 1); } assert(fib(10) == 89); fib(10) should be 55. http://en.wikipedia.org/wiki/Fibonacci_number#List_of_Fibonacci_numbers I think the code should be (n <= 2): ulong fib(ulong n) { alias memoize!fib mfib; return n <= 2 ? 1 : mfib(n - 2) + mfib(n - 1); } assert(fib(10) == 55); It's also in the unittest https://github.com/D-Programming-Language/phobos/blob/master/std/functional.d -- Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- |
March 04, 2012 [Issue 7646] bug in code sample and unittest | ||||
---|---|---|---|---|
| ||||
Posted in reply to josvanuden@gmail.com | http://d.puremagic.com/issues/show_bug.cgi?id=7646 --- Comment #1 from josvanuden@gmail.com 2012-03-04 12:08:27 PST --- (In reply to comment #0) > I think the code should be (n <= 2): > > ulong fib(ulong n) { > alias memoize!fib mfib; > return n <= 2 ? 1 : mfib(n - 2) + mfib(n - 1); > } > > assert(fib(10) == 55); No, that still won't do. This is better: ulong fib(ulong n) { alias memoize!fib mfib; return n <= 2 ? n != 0 : mfib(n - 2) + mfib(n - 1); } -- Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- |
March 05, 2012 [Issue 7646] bug in code sample and unittest | ||||
---|---|---|---|---|
| ||||
Posted in reply to josvanuden@gmail.com | http://d.puremagic.com/issues/show_bug.cgi?id=7646 josvanuden@gmail.com changed: What |Removed |Added ---------------------------------------------------------------------------- Priority|P2 |P5 -- Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- |
March 11, 2012 [Issue 7646] bug in code sample and unittest | ||||
---|---|---|---|---|
| ||||
Posted in reply to josvanuden@gmail.com | http://d.puremagic.com/issues/show_bug.cgi?id=7646 --- Comment #2 from josvanuden@gmail.com 2012-03-11 04:24:44 PDT --- ulong fib (ulong n) { alias memoize!fib mfib; return n < 2 ? n : mfib(n - 2) + mfib(n - 1); } -- Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- |
June 04, 2012 [Issue 7646] bug in code sample and unittest | ||||
---|---|---|---|---|
| ||||
Posted in reply to josvanuden@gmail.com | http://d.puremagic.com/issues/show_bug.cgi?id=7646 josvanuden@gmail.com changed: What |Removed |Added ---------------------------------------------------------------------------- Status|NEW |RESOLVED Resolution| |INVALID --- Comment #3 from josvanuden@gmail.com 2012-06-04 07:16:19 PDT --- It turns out some people regard F0 = 0 and some F0 = 1. So it's not a bug after all. -- Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- |
Copyright © 1999-2021 by the D Language Foundation