CMU Coding Bootcamp

feat: add another assignment

thecoded.prof fb1ddfa4 a13423d7

verified
Changed files
+21
python
assignments
+21
python/assignments/sep30/triangleArea.py
···
··· 1 + import math 2 + def almostEqual(x, y): 3 + return (abs(x - y) < 10**-9) 4 + 5 + def triangleArea(a, b, c): 6 + semiperimeter = .5 * (a + b + c) 7 + return math.sqrt(semiperimeter * (semiperimeter - a) * (semiperimeter - b) * (semiperimeter - c)) 8 + 9 + 10 + print('Testing triangleArea()...', end='') 11 + assert(almostEqual(triangleArea(3, 4, 5), 6)) 12 + assert(almostEqual(triangleArea(15, 9, 12), 54)) 13 + assert(almostEqual(triangleArea(7, 25, 24), 84)) 14 + assert(almostEqual(triangleArea(8, 15, 17), 60)) 15 + assert(almostEqual(triangleArea(0, 0, 0), 0)) 16 + assert(almostEqual(triangleArea(1, 1, 1), math.sqrt(3)/4)) 17 + assert(almostEqual(triangleArea(5, 5, 5), 25*math.sqrt(3)/4)) 18 + assert(almostEqual(triangleArea(12, 12, 12), 144*math.sqrt(3)/4)) 19 + assert(almostEqual(triangleArea(7, 12, 18), math.sqrt(11063)/4)) 20 + assert(almostEqual(triangleArea(9.1, 11.7, 3), 7*math.sqrt(3026)/50)) 21 + print('Passed!')