任意三角形形狀判斷 Python練習系列 10

2022-09-18 17:30:12 字數 2066 閱讀 8904

完整**和注釋如下

class point(object):#定義平面點類

"""docstring for point"""

def __init__(self,x,y,name):

self.x = x

self.y = y

self.name = name

def distance(self,p2):#兩點距離公式

self.d=((self.x-p2.x)**2+(self.y-p2.y)**2)**0.5

return self.d

def getd(self,p2):#獲取兩點距離

self.distance(p2)

print('the distance of ({},{}) and ({},{}) is {} '.format(self.x,self.y,p2.x,p2.y,self.d))

def is********(self,p2,p3):#判斷這三點能否形成乙個三角形

self.l_list=#先獲取這三點構成的三條線段的長度

self.l_list.sort()#線段長度由小到大排序

if (self.l_list[0]+self.l_list[1]>self.l_list[2]) and (self.l_list[1]+self.l_list[2]>self.l_list[0]) and (self.l_list[2]+self.l_list[0]>self.l_list[1]):#長度判斷

return 'can'

else:

return 'can not'

def getresult(self,p2,p3):#獲取能否形成三角形的結果

result=self.is********(p2,p3)

print('points:',self.name,p2.name,p3.name,result,'form a ********')

def which********(self,p2,p3):#判斷是哪種三角形

result=self.is********(p2,p3)

if result=='can not':

return print('points:',self.name,p2.name,p3.name,result,'form a ********')

if self.l_list[0]**2+self.l_list[1]**2>self.l_list[2]**2:#銳角

print('points:',self.name,p2.name,p3.name,result,'form a acute ********')

elif self.l_list[0]**2+self.l_list[1]**2==self.l_list[2]**2:#直角

print('points:',self.name,p2.name,p3.name,result,'form a right ********')

elif self.l_list[0]**2+self.l_list[1]**2print('points:',self.name,p2.name,p3.name,result,'form a obtuse ********')

#測試p1=point(12,-5,'p1')

p2=point(16,18,'p2')

p3=point(9,7,'p3')

p1.getd(p2)

p1.getresult(p2,p3)

p1.which********(p2,p3)

print()

p5=point(0,3,'p5')

p6=point(4,0,'p6')

p7=point(0,0,'p7')

p5.getd(p6)

p5.which********(p6,p7)

print()

p8=point(10,3,'p8')

p9=point(4,3,'p9')

p10=point(-9,0,'p10')

p8.getd(p9)

p8.which********(p9,p10)

任意三角形形狀判斷 Python練習系列 10

完整 和注釋如下 class point object 定義平面點類 docstring for point def init self,x,y,name self.x x self.y y self.name name defdistance self,p2 兩點距離公式 self.d self....

DS 判斷三角形形狀

題目描述 編寫程式,根據三角形三條邊的長度判斷該三角形是哪種三角形?三角形的型別包括 等邊三角形 等腰三角形 直角三角形 普通三角形 也有可能,無法組成三角形 輸入輸入包括多行資料,每行包括三個正整數,a,b,c代表三角形三條邊的長度 輸出針對每行輸入,做如下處理後換行 如果該三角形是等邊三角形,輸...

三角形形狀

描述 給以乙個三角形的三邊長a,b和c 邊長是浮點數 請你判斷三角形的形狀。若是銳角三角形,輸出r,若是直角三角形,輸出z,若是鈍角三角形,輸出d,若三邊長不能構成三角形,輸出w.from future importprint function a,b,c 6,8,10 defwhat kind a...