解题思路:

按照公式计算就可以了。


注意事项:

参考代码:

from math import sqrt  
def f(x1,y1,x2,y2,x3,y3):  
    a = sqrt((x1-x2)**2+(y1-y2)**2)  
    b = sqrt((x1-x3)**2+(y1-y3)**2)  
    c = sqrt((x2-x3)**2+(y2-y3)**2)  
    p = (a+b+c)/2  
  
    len = a+b+c                         #计算周长和面积
    area = sqrt(p*(p-a)*(p-b)*(p-c))  
  
    A1 = 2*(x2-x1)                      #计算外心
    B1 = 2*(y2-y1)  
    C1 = x2**2+y2**2-x1**2-y1**2  
    A2 = 2*(x3-x2)  
    B2 = 2*(y3-y2)  
    C2 = x3**2+y3**2-x2**2-y2**2  
    x_out = ((C1*B2)-(C2*B1))/((A1*B2)-(A2*B1))  
    y_out = ((A1*C2)-(A2*C1))/((A1*B2)-(A2*B1))  
  
    x_weight = (x1+x2+x3)/3            #计算重心
    y_weight = (y1+y2+y3)/3  
  
    print('%.2f' % len)  
    print('%.2f' % area)  
    print('{:.2f} {:.2f}'.format(x_out,y_out))  
    print('{:.2f} {:.2f}'.format(x_weight,y_weight))  
      
  
if __name__ == '__main__':  
   x1,y1 = map(float,input().strip().split())  
   x2,y2 = map(float,input().strip().split())  
   x3,y3 = map(float,input().strip().split())  
   f(x1,y1,x2,y2,x3,y3)


点赞(0)
 

0.0分

1 人评分

C语言网提供由在职研发工程师或ACM蓝桥杯竞赛优秀选手录制的视频教程,并配有习题和答疑,点击了解:

一点编程也不会写的:零基础C语言学练课程

解决困扰你多年的C语言疑难杂症特性的C语言进阶课程

从零到写出一个爬虫的Python编程课程

只会语法写不出代码?手把手带你写100个编程真题的编程百练课程

信息学奥赛或C++选手的 必学C++课程

蓝桥杯ACM、信息学奥赛的必学课程:算法竞赛课入门课程

手把手讲解近五年真题的蓝桥杯辅导课程

评论列表 共有 0 条评论

暂无评论