Enable Javascript in your browser and then refresh this page, for a much enhanced experience.
First solution in Clear category for The Angles of a Triangle by Chramar
import math
def kat(a, b, c):
return math.degrees(math.acos((c**2 - b**2 - a**2)/(-2.0 * a * b)))
def checkio(a, b, c):
tab=[]
if a+b>c and c+b>a and a+c>b:
ang1 = round(kat(a, b, c), 0)
tab.append(ang1)
ang2 = round(kat(b, c, a), 0)
tab.append(ang2)
ang3 = round(kat(c, a, b), 0)
tab.append(ang3)
tab.sort()
return tab
else:
return [0, 0, 0]
#These "asserts" using only for self-checking and not necessary for auto-testing
if __name__ == '__main__':
assert checkio(4, 4, 4) == [60, 60, 60], "All sides are equal"
assert checkio(3, 4, 5) == [37, 53, 90], "Egyptian triangle"
assert checkio(2, 2, 5) == [0, 0, 0], "It's can not be a triangle"
Oct. 14, 2016
Comments: