[Tutor] exercise (while loop)
Danny Yoo
dyoo at hashcollision.org
Tue Apr 1 06:19:21 CEST 2014
On Mon, Mar 31, 2014 at 8:48 PM, Scott W Dunning <scott.w.d at cox.net> wrote:
>
> On Mar 31, 2014, at 7:10 PM, Danny Yoo <dyoo at hashcollision.org> wrote:
> Thanks for the info Danny! I’ll try that and I should be able to figure it out with your help!
>
> The book I was referring to is greentreepress.
The reason I'm asking is I want to double check the example code.
Checking...
http://greenteapress.com/
... but Green Tree Press publishes a few Python books. Hmmm. I will
guess that you mean: Allen Downey's: "How to Think Like a Computer
Scientist".
Ah, found it.
http://greenteapress.com/thinkpython/html/thinkpython008.html#toc81
But please, try to provide details. You tend to suppress helpful
details. I would like to avoid guessing next time, so be aware that
we don't see what you're thinking.
Ok, I see now what you were looking at. But we need to wheel back
around to one of your original questions. You said:
> This is what the book has but it just gives me an endless loop.
>
> def square_root(a, eps=1e-6):
> while True:
> print x
> y = (x + a/x) / 2
> if abs(y-x) < epsilon:
> break
>
> round(square_root(9))
Go back and look at that text again:
http://greenteapress.com/thinkpython/html/thinkpython008.html#toc81
and now see that the book does not present a function in that section.
Instead, it's showing exploratory code. There's no function there,
all the state is global, and it's not computing a return value.
So you shouldn't be too surprised that the code the book is
presenting, as a non-functional example, requires some adaptation
before it works as a function.
More information about the Tutor
mailing list