Re: [Tutor] next class problem

2010-09-18 Thread Roelof Wobben




> Date: Sat, 18 Sep 2010 13:40:55 -0400
> From: bgai...@gmail.com
> To: rwob...@hotmail.com
> CC: tutor@python.org
> Subject: Re: [Tutor] next class problem
>
> On 9/18/2010 1:20 PM, Roelof Wobben wrote:
>>
>> Hello,
>>
>> I have this exercise :
>>
>> Rewrite the distance function from chapter 5 so that it takes two Points as 
>> parameters instead of four numbers.
>>
>> I have this solution :
>>
>> class Point:
>> def __init__(self, x=0, y=0):
>> self.x = x
>> self.y = y
>>
>> def distance(p1,p2):
>> dx = p2.x - p1.x
>> dy = p2.y - p1.y
>> dsquared = dx**2 + dy**2
>> result = dsquared**0.5
>> return result
>> P1 = Point()
>> P1.x = 3
>> P1.y = 3
>> P2 = Point()
>> P2.x = 6
>> P2.y = 7
>> result = distance (P1,P2)
>> print result
>>
>>
>> Is this the correct solution ?
>
> What is your criteria for "correct"?
>
> There is no one correct solution!
>
> You seem to be passing 2 points, as requested.
>
> Do you get the correct answer?
>
> Then it mus be correct.
>
> FWIW Python convention recommends names starting with lower case except
> for classes and constants.
>
> Therefore p1 and p2 are preferred to P1 and P2.
>
> Also why not initialize x and y thus:
> p1 = Point(3,3)
> That is what the __init__ is for.
>
> --
> Bob Gailer
> 919-636-4239
> Chapel Hill NC
>
 
Hello, 
 
Thank you.
Learned another thing.
 
Roelof

  
___
Tutor maillist  -  Tutor@python.org
To unsubscribe or change subscription options:
http://mail.python.org/mailman/listinfo/tutor


Re: [Tutor] next class problem

2010-09-18 Thread bob gailer

 On 9/18/2010 1:20 PM, Roelof Wobben wrote:


Hello,

I have this exercise :

Rewrite the distance function from chapter 5 so that it takes two Points as 
parameters instead of four numbers.

I have this solution :

class Point:
  def __init__(self, x=0, y=0):
  self.x = x
  self.y = y

def distance(p1,p2):
 dx = p2.x - p1.x
 dy = p2.y - p1.y
 dsquared = dx**2 + dy**2
 result = dsquared**0.5
 return result
P1 = Point()
P1.x = 3
P1.y = 3
P2 = Point()
P2.x = 6
P2.y = 7
result = distance (P1,P2)
print result


Is this the correct solution ?


What is your criteria for "correct"?

There is no one correct solution!

You seem to be passing 2 points, as requested.

Do you get the correct answer?

Then it mus be correct.

FWIW Python convention recommends names starting with lower case except 
for classes and constants.


Therefore p1 and p2 are preferred to P1 and P2.

Also why not initialize x and y thus:
p1 = Point(3,3)
That is what the __init__ is for.

--
Bob Gailer
919-636-4239
Chapel Hill NC

___
Tutor maillist  -  Tutor@python.org
To unsubscribe or change subscription options:
http://mail.python.org/mailman/listinfo/tutor


[Tutor] next class problem

2010-09-18 Thread Roelof Wobben


Hello, 
 
I have this exercise :
 
Rewrite the distance function from chapter 5 so that it takes two Points as 
parameters instead of four numbers.
 
I have this solution :
 
class Point:
 def __init__(self, x=0, y=0): 
 self.x = x
 self.y = y
 
def distance(p1,p2):
dx = p2.x - p1.x
dy = p2.y - p1.y
dsquared = dx**2 + dy**2
result = dsquared**0.5
return result
P1 = Point()
P1.x = 3
P1.y = 3
P2 = Point()
P2.x = 6
P2.y = 7 
result = distance (P1,P2)
print result
 
 
Is this the correct solution ?
 
Roelof
  
___
Tutor maillist  -  Tutor@python.org
To unsubscribe or change subscription options:
http://mail.python.org/mailman/listinfo/tutor