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 u2ezi
import math
def angle(a, b, c):
return math.degrees(math.acos((c**2 + b**2 - a**2)/(2.0 * b * c)))
def checkio(a, b, c):
if a+b>c and a+c>b and b+c>a:
angA = angle(a,b,c)
angB = angle(b,c,a)
angC = angle(c,a,b)
angA = '%.f' % round(angA, 0)
angB = '%.f' % round(angB, 0)
angC = '%.f' % round(angC, 0)
else:
angA = angB = angC = 0
res = [int(angA),int(angB),int(angC)]
res.sort()
return res
#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"
Nov. 1, 2016