-
Notifications
You must be signed in to change notification settings - Fork 5
Expand file tree
/
Copy pathrightTriTest.m
More file actions
39 lines (31 loc) · 926 Bytes
/
rightTriTest.m
File metadata and controls
39 lines (31 loc) · 926 Bytes
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
% test triangles
tri = [7 9];
triIso = [4 4];
tri306090 = [2 2*sqrt(3)];
triSkewed = [1 1500];
%preconditions
angles = rightTri(tri);
assert(angles(3) == 90, 'Fundamental problem: rightTri not producing right triangle')
%% Test 1: sum of angles
angles = rightTri(tri);
assert(sum(angles) == 180)
angles = rightTri(triIso);
assert(sum(angles) == 180);
angles = rightTri(tri306090);
assert(sum(angles) == 180);
angle = rightTri(triSkewed);
assert(sum(angles) == 180);
%% Test 2: isosceles triangles
angles = rightTri(triIso);
assert(angles(1) == 45);
assert(angles(1) == angles(2));
%% Test 3: 30-60-90 triangle
angles = rightTri(tri306090);
assert(angles(1) == 30);
assert(angles(2) == 60);
assert(angles(3) == 90);
%% Test 4: Small angle approximation
angles = rightTri(triSkewed);
smallAngle = (pi/180)*angles(1); % radians
approx = sin(smallAngle);
assert(approx == smallAngle, 'Problem with samll approximation');