python如何将无理数储存在变量中
a=eval(input('输入第1条边'))b=eval(input('输入第2条边'))
c=eval(input('输入第3条边'))
if a+b<=c or a+c<=b or b+c<=a:
print('不能组成三角形')
elif a==b==c:
print('是等边三角形')
elif a==b or b==c or a==c:
if a**2+b**2==c**2 or a**2+c**2==b**2 or b**2+c**2==a**2:
print('等腰直角三角形')
else:
print('等腰三角形')
elif a**2+b**2==c**2 or a**2+c**2==b**2 or b**2+c**2==a**2:
print('直角三角形')
else:
print('一般三角形')
我输入1,1,根号2的话不是直角三角形,是不是根号二被约算了。如何解决
按照你的程序运算的。
输入第1条边1
输入第2条边1
输入第3条边2**0.5
等腰三角形 冬雪雪冬 发表于 2019-11-9 15:06
按照你的程序运算的。
应该是等腰直角三角形才对
由于浮点运算存在误差,判断相等会出现错误,可以把差值的相对值小于某个数判断为相等。 冬雪雪冬 发表于 2019-11-10 14:49
由于浮点运算存在误差,判断相等会出现错误,可以把差值的相对值小于某个数判断为相等。
那么这么弄呢
感谢 5258885 发表于 2019-11-10 16:15
那么这么弄呢
感谢
还有一个办法,用户输入边长的平方
页:
[1]