用python查找三角形中的角度

用python查找三角形中的角度,python,Python,我试图用规则找到三角形的一个角度: 如果三个数字的总和=180,则再次检查: 如果三角形的三个角形成锐角,其大小介于0°到90°之间,则打印“锐角”字样 如果其中一个角是钝角,其大小在90°到180°之间,则打印“钝角”字样 如果其中一个角是直角,其大小为90°,则打印文字“carpenter三角形” 如果三个数字的总和不是180,则打印“非三角形”字样 这是我的程序,但我得到了错误的输出: A = int(input("enter the number of 1 : "))

我试图用规则找到三角形的一个角度: 如果三个数字的总和=180,则再次检查: 如果三角形的三个角形成锐角,其大小介于0°到90°之间,则打印“锐角”字样 如果其中一个角是钝角,其大小在90°到180°之间,则打印“钝角”字样 如果其中一个角是直角,其大小为90°,则打印文字“carpenter三角形” 如果三个数字的总和不是180,则打印“非三角形”字样

这是我的程序,但我得到了错误的输出:

A = int(input("enter the number of 1 : "))
B = int(input("enter the number of 2 : "))
C = int(input("enter the number of 3 : "))

if(A+B+C <= 90):
    print("acute angle")
if(  90>A<=180 or 90>B<=180 or 90>C<=180 ):
    print("obtuse angle")
if(A+B+C > 180):
    print("NOT TRIANGLE")
    break
if(A==90 or B==90 or C==90):
    print("carpenter's triangle")
A=int(输入(“输入1:”)的数字)
B=int(输入(“输入2:”)的数字)
C=int(输入(“输入3的数字:”)
如果(A+B+C ABC 180):
打印(“非三角形”)
打破
如果(A==90或B==90或C==90):
印刷(“木匠三角”)

我需要你的意见来修复这个程序

Hmmm,如果我没弄错的话:

if A+B+C != 180:
    #Cannot be a triangle
    print("Not triangle, please enter new values")
else:
    #We can proceed as its a viable entry
    if A < 90 and B < 90 and C < 90:
        print("Acute Angle")
    elif A == 90 or B == 90 or C == 90:
        print("Carpenter's triangle")
    elif A > 90 or B > 90 or C > 90:
        print("Obtuse angle")
    else:
        print("Some other scenario we haven't accounted for")
如果A+B+C!=180:
#不能是三角形
打印(“不是三角形,请输入新值”)
其他:
#我们可以继续,因为这是一个可行的入口
如果A<90,B<90,C<90:
打印(“锐角”)
如果A==90或B==90或C==90:
印刷(“木匠三角”)
如果A>90或B>90或C>90:
打印(“钝角”)
其他:
打印(“其他一些我们没有考虑的场景”)

按照您的逻辑,您永远不会进入有效三角形的打印(“锐角”)场景。

如果条件不正确。您应该使用elif而不是if,而不使用first if。因为三角形不能同时是锐角和钝角

A=int(输入(“输入1:”)的数字)
B=int(输入(“输入2:”)的数字)
C=int(输入(“输入3的数字:”)
如果A+B+C!=180或A180或B180或C180:
打印(“非三角形”)

elif A以下是一种您可以尝试的解决方案:

# If sum of angles makes upto 180; then a triangle 
if(A+B+C == 180):
  # if atleast one side is 90; then Carpenter's triangle
  if(A==90 or B==90 or C==90):
    print("Carpenter's triangle")
  # if all sides are less than 90; then Accute triangle
  elif(A<90 and B<90 and C<90):
    print("Accute triangle")
  # if atleast one side is greater than 90; then Obtuce triangle
  elif(90>A<=180 or 90>B<=180 or 90>C<=180):
    print("Obtuse triangle")
else:
    print('Not a triangle')
#如果角度之和达到180;然后是一个三角形
如果(A+B+C==180):
#如果至少一侧为90;然后是卡彭特三角形
如果(A==90或B==90或C==90):
印刷(“木匠三角”)
#如果所有边均小于90;然后是Accute三角形

否则如果(你能解释一下哪个部分不工作吗?你能提供不正确的输入和输出样本吗?请说出你看到的
错误输出
。另外,我希望
中断
会给你一个错误。如果输入A=90 B=90和C=90,它不应该是一个三角,而应该是我我的程序是print carpenter's Triangles请看@Amiga500的答案。输入只返回非三角形您的输入是什么?我输入A=90,B=30,C=10它应该是钝角三角形,在您的程序中它显示非三角形三角形三角形三角形有3个角度,加起来必须是180。假设您的输入三角形的角度仅等于130,程序是cor如果我输入A=90,B=30,C=10,它应该是钝角的,在你的程序中它不会显示三角形。如果A=90,B=30,C=10,它不是三角形。三角形的角度之和总是等于180。