compute the double square...... :(

Ian Kelly ian.g.kelly at gmail.com
Sun Jan 9 05:59:27 EST 2011


On 1/8/2011 11:10 PM, aregee wrote:
> pie.py:3: Deprecation Warning: integer argument expected, got float
>    for b in range(0,(x**0.5)/2):

I expect you want range(0, int((x / 2) ** 0.5) + 1), no?

> for b in range(0,(x**0.5)/2):
>        a = (x-(b**2))**0.5
> try:
>        a = int(a)
> except:
>        print("not an integer")
>        exit(1)

Your indentation is confusing.  Is the try-except contained inside the 
for loop or not?

And what are you actually trying to test for here?  The assignment here 
of "a = int(a)" will never throw an exception as long as the loop runs.

>
>        count = 0;
>        count = count + 1;

Again, confusing indentation.  Is this supposed to be part of the except 
block?  And what is the purpose of incrementing count if you're going to 
set it to 0 immediately before?  You might as well just write "count = 1"

> if (x == a**2 + b**2):
>
>        print "double square"

This also appears to be outside of the loop.




More information about the Python-list mailing list