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 Andreas_Strus
def checkio(a, b, c):
import math
if a + b > c and b + c > a and c + a > b:
x = (math.degrees(math.acos((a**2 + b**2 - c**2)/(2 * a * b))))
y = (math.degrees(math.acos((a**2 + c**2 - b**2)/(2 * a * c))))
z = (math.degrees(math.acos((c**2 + b**2 - a**2)/(2 * c * b))))
def rou(n):
if n - int(n) >= 0.5:
n = n + 1
n = int(n)
return n
a = rou(x)
b = rou(y)
c = rou(z)
alist = [a, b, c]
lista = []
for n in alist:
if n == min(alist):
lista = lista + [n]
alist.remove(n)
lista = lista + [min(alist), max(alist)]
return lista
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. 20, 2016