Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/304.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/visual-studio-2008/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python练习_Python - Fatal编程技术网

Python练习

Python练习,python,Python,我在ThinkPython中遇到了一个练习,但我不知道怎么做 练习:1。编写一个名为is_triangle的函数,该函数以三个整数作为参数,并根据给定长度的木棒是否可以形成三角形打印“是”或“否” 当然:“如果这三个长度中的任何一个大于另外两个的总和,那么你就不能形成一个三角形。否则,你可以3。”有很多方法可以做到这一点,这里有一个: def is_triangle(a, b, c): if (a > b + c) or (b > a + c) or (c > a +

我在ThinkPython中遇到了一个练习,但我不知道怎么做

练习:1。编写一个名为is_triangle的函数,该函数以三个整数作为参数,并根据给定长度的木棒是否可以形成三角形打印“是”或“否”


当然:“如果这三个长度中的任何一个大于另外两个的总和,那么你就不能形成一个三角形。否则,你可以3。”

有很多方法可以做到这一点,这里有一个:

def is_triangle(a, b, c):
    if (a > b + c) or (b > a + c) or (c > a + b):
        print "No"
    else:
        print "Yes"

三角形不等式定理指出三角形的任何一边总是短于其他两边之和

在上面的代码中,它检查任何一个边是否大于或等于其他边的总和&无法打印

代码:


编辑:更改>为>=以符合OP发布的确切要求。谢谢你指出这一点,约翰!还添加了注释。

三角形的两条边之和必须大于第三条边才能构成有效三角形 代码如下:

def is_triangle(a,b,c):       #take three arguments
if(a+b>c)and(b+c>a)and(a+c>b):       #check the conditions
 print "Yes"
else:
print "No"

观察它的一种方法是注意到,如果任何一边大于周长的一半,即棍子长度的总和,那么它就不能形成三角形。因此,测试每个杆是否小于perim/2。此测试不仅适用于3根棍棒,还适用于任意数量的棍棒>2根,请尝试以下方法:

def is_triangle(a, b, c):
    if((a + b > c) && (a + c > b) && (b + c > a)):
        print "Yes"
    else:
        print "No"

我只想做一个函数,将3个整数中的2个相加,然后检查它们是否大于第3个。这是一个每个数字都有一个elif语句。@user1180169基于此和您的其他问题,请阅读关于如何提问的说明,以便获得最佳帮助。谢谢,正是我要找的。已解决,可能已关闭。@user1180169错误。我的回答是对的。他的答案将给出1,3,4作为有效边。如果这三个长度中的任何一个大于其他两个长度之和,那么就不能形成三角形。不表示大于或等于,因此问题的陈述似乎允许共线点作为三角形。@Cameron Ohk,我一开始阅读,就认为这是标准定理。根据问题陈述,它是正确的。对于干净的数学,挂起+1,但是根据OP的要求,我认为它应该是>=不是>。13应该是允许的。@JohanLundberg:谢谢,请回答。
def is_triangle(a,b,c):       #take three arguments
if(a+b>c)and(b+c>a)and(a+c>b):       #check the conditions
 print "Yes"
else:
print "No"
def is_triangle(a, b, c):
    if((a + b > c) && (a + c > b) && (b + c > a)):
        print "Yes"
    else:
        print "No"