zoukankan      html  css  js  c++  java
  • 任意输入3个数,判断能否组成三角形(python)

    任意输入3个数,判断能否组成三角形。

    三角形:两边之和大于第三边 
    直角三角形:勾股定理

    代码如下:

    # 输入合法性检查,必须输入正数,不支持科学计数法
    '''
    try:
    <语句>
    except <name>:
    <语句> #如果在try部份引发了名为'name'的异常,则执行这段代码
    else:
    <语句> #如果没有异常发生,则执行这段代码
    '''
    def ispositive(num):
    try:
    float(num)
    except:
    return False
    else:
    if float(num) <= 0:
    return False
    else:
    return True

    # 直角三角形判断
    def isRightTriangle(num1,num2,num3):
    if num1**2 + num2**2 == num3**2 or num1**2 + num3**2 == num2**2 or num2**2 + num3**2 == num1**2:
    return True
    else:
    return False

    a = input("请输入第1个数字:")
    while not ispositive(a):
    a = input("不是有效数字,请重新输入:")
    b = input("请输入第2个数字:")
    while not ispositive(b):
    b = input("不是有效数字,请重新输入:")
    c = input("请输入第3个数字:")
    while not ispositive(c):
    c = input("不是有效数字,请重新输入:")

    a = float(a)
    b = float(b)
    c = float(c)

    # 判断是否可以组成三角形
    if a + b > c and a + c > b and b + c > a:
    if a == b == c:
    print('%.2f,%.2f,%.2f能组成等边三角形'%(a,b,c))
    elif a == b or a == c or b == c:
    if isRightTriangle(a,b,c):
    print('%.2f,%.2f,%.2f能组成等腰直角三角形'%(a,b,c))
    else:
    print('%.2f,%.2f,%.2f能组成等腰三角形'%(a,b,c))
    elif isRightTriangle(a,b,c):
    print('%.2f,%.2f,%.2f能组成直角三角形'%(a,b,c))
    else:
    print('%.2f,%.2f,%.2f能组成普通三角形'%(a, b, c))
    else:
    print('%.2f,%.2f,%.2f不能组成三角形'%(a,b,c))
  • 相关阅读:
    20201015-3 每周例行报告
    20201008-1 每周例行报告
    20200924-1 每周例行报告
    20200924-3 单元测试,结对
    刷题-Leetcode-120. 三角形最小路径和
    刷题-Leetcode-1025. 除数博弈
    刷题-Leetcode-217. 存在重复元素
    刷题-Leetcode-24.两两交换链表中的节点
    刷题-AcWing-104. 货仓选址
    ARP报文抓包解析实验报告
  • 原文地址:https://www.cnblogs.com/lizhe860/p/9456279.html
Copyright © 2011-2022 走看看