Python实例001:根据三边边长判断三角形形状并求取其面积

Python实例001:根据三边边长判断三角形形状并求取其面积

输入三边边长,根据三边边长判断三角形形状并求取其面积

#!/usr/bin/env python3
# -*- coding: UTF-8 -*-
'''
@File   :Triangular_area.py
@Author :Mr. H
@Date   :2019/1/29 21:07
@Desc   :输入三边边长,根据三边边长判断三角形形状并求取其面积
'''

import math

flag = True
while flag :
    First = float(input('请输入三角形的第一边长:'))
    Second = float(input('请输入三角形的第一边长:'))
    Third = float(input('请输入三角形的第一边长:'))
    if (First > 0 and Second > 0 and Third > 0) :
        flag = False
    else :
        flag = True
        print('输入的三边边长必须要大于0,请重新输入!\n')

# 从小到大排序,并赋值给a、b、c
a = min(First, Second, Third)
c = max(First, Second, Third)
if (First != a and First != c) :
    b = First
elif(Second != a and Second != c) :
    b = Second
else :
    b = Third
print('该三角形三边边长分别为%0.2f, %0.2f, %0.2f' % (a, b, c))
print('\n')

# 判断三边是否能构成三角形
if ( a+b > c and c-a < b and c-b < a ) :

    # 根据三边关系,判断三角形形状并求取其面积
    if (a == b == c) :
        Area = a*a * math.sin( math.pi/3 ) /2
        print('该三角形为等边三角形,其面积为:%0.2f' % Area)
    elif (a == b or b == c or a == c) :
        C = (a+b+c) / 2
        Area = math.sqrt( C*(C-a)*(C-b)*(C-c))
        print('该三角形为等腰三角形,其面积为:%0.2f' % Area)
    elif ( a**2 + b**2 == c**2 ) :
        Area = a*b / 2
        print('该三角形为直角三角形,其面积为:%0.2f' % Area)
    else :
        C = (a+b+c) / 2
        Area = math.sqrt( C*(C-a)*(C-b)*(C-c))
        print('该三角形为一般三角形,其面积为:%0.2f' % Area)
else :
    print('当a = %0.2f, b = %0.2f, c = %0.2f为三边长时,不能构成三角形 !' % (a, b, c))

运行结果如下:

  • 结果1
请输入三角形的第一边长:0
请输入三角形的第一边长:1
请输入三角形的第一边长:2
输入的三边边长必须要大于0,请重新输入!

请输入三角形的第一边长:
  • 结果2
请输入三角形的第一边长:3
请输入三角形的第一边长:4
请输入三角形的第一边长:8
该三角形三边边长分别为3.00, 4.00, 8.00

当a = 3.00, b = 4.00, c = 8.00为三边长时,不能构成三角形 !
  • 结果3
请输入三角形的第一边长:6
请输入三角形的第一边长:6
请输入三角形的第一边长:6
该三角形三边边长分别为6.00, 6.00, 6.00

该三角形为等边三角形,其面积为:15.59
  • 结果4
请输入三角形的第一边长:6
请输入三角形的第一边长:6
请输入三角形的第一边长:8
该三角形三边边长分别为6.00, 8.00, 8.00

该三角形为等腰三角形,其面积为:22.25
  • 结果5
请输入三角形的第一边长:3
请输入三角形的第一边长:4
请输入三角形的第一边长:5
该三角形三边边长分别为3.00, 4.00, 5.00

该三角形为直角三角形,其面积为:6.00
  • 结果6
请输入三角形的第一边长:6
请输入三角形的第一边长:7
请输入三角形的第一边长:8
该三角形三边边长分别为6.00, 7.00, 8.00

该三角形为一般三角形,其面积为:20.33

  • 致谢
    若对大家有用,感谢点赞或评论;若有不足或补充之处,也感谢大家评论进行指正,后期我将对本文进行补充完善。相信这是互相进步的开始!

你可能感兴趣的:(编程语言PL,______Python,Case,软件开发技术_Python)