完整**和注釋如下
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.x-p2.x)**2
+(self.y-p2.y)**2
)**0.5return self.d
defgetd
(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'
defgetresult
(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]
**2**2
:#鈍角
print
('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 def distance 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...