def practical_test36(): link(A, D) link(A, E) link(D, C) link(E, C) link(D, B) link(E, B) link(D, E) set_angle('DAE', 60) set_length('BD', 2) set_length('BE', 2) set_length('AD', 3) set_length('AE', 3) split_angle('ADB', 'DC') split_angle('AEB', 'EC') common_vertex_angles('D', ['A', 'C', 'B', 'E']) common_vertex_angles('E', ['A', 'C', 'B', 'D']) get_angle('DBE') # assert abs(result['answer'] - 97.181) < 1e-3 return get_problem()
def practical_test26(): link(A, B, E) link(A, C, F) link(B, C) link(B, D) link(C, D) link(B, P) link(C, P) set_angle('BAC', 30) set_angle('ABC', 80) split_angle('ABC', 'BD', 0.5) split_angle('ACB', 'CD', 0.5) split_angle('CBE', 'BP', 0.5) split_angle('BCF', 'CP', 0.5) common_vertex_angles('B', ['A', 'D', 'C']) common_vertex_angles('B', ['C', 'P', 'E']) common_vertex_angles('C', ['A', 'D', 'B']) common_vertex_angles('C', ['B', 'P', 'F']) get_angle('BPC') # assert result['answer'] == 75 return get_problem()
def test_easy_input2(): link(A, B) link(C, D) link(B, C) parallel('AB', 'CD') set_angle('ABC', 60) result = get_angle('BCD') print(result)
def practical_test131(): link(A, B, C) link(B, D) set_angle('ABD', 70) get_angle('CBD') # assert result['answer'] == 75 return get_problem()
def practical_test31(): link(A, B) link(A, C) link(D, B, C, E) set_angle('BAC', 80) set_angle('ACE', 140) get_angle('ABD') # assert result['answer'] == 120 return get_problem()
def basic_test25(): link(A, B) link(A, C) link(B, C) set_angle('BAC', 45) get_angle('ABC') # assert result['answer'] == 75 return get_problem()
def practical_test19(): link(A, B) link(A, C) link(B, C, D) set_angle('ABC', 40) set_angle('ACD', 120) get_angle('BAC') # assert result['answer'] == 80 return get_problem()
def practical_test3(): link(A, B, C, E) link(B, D) link(D, E) set_angle('ABD', 120) set_angle('BDE', 30) set_length('BD', 210) get_length('DE') # assert abs(result['answer'] - (3**(1/2) / 2) * 210) < 1e-3 return get_problem()
def practical_test43(): link(A, B) link(A, C) link(B, D, C) link(A, D) split_line('BC', 'D') set_angle('BAC', 90) set_length('AB', 4) set_length('AC', 3) get_length('AD') # assert result['answer'] == 2.5 return get_problem()
def practical_test20(): link(A, F, B) link(A, E) link(C, F, E) link(C, D) set_angle('EAB', 20) set_angle('AEC', 35) parallel('AB', 'CD') get_angle('ECD') # assert result['answer'] == 55 return get_problem()
def practical_test41(): link(A, B) link(B, D) link(B, C) link(A, D, C) set_length('AB', 1) set_length('BD', 1) set_length('CD', 1) set_angle('BDC', 110) get_angle('ABC') # assert result['answer'] == 75 return get_problem()
def practical_test13(): link(A, B) link(A, C) link(B, C) link(C, D) parallel('AB', 'DC') set_angle('BAC', 70) set_angle('ABC', 40) get_angle('ACD') # assert result['answer'] == 70 return get_problem()
def practical_test11(): link(A, B) link(A, C) link(B, C) link(D, C) parallel('AB', 'DC') set_angle('ACD', 64) set_angle('ABC', 42) get_angle('ACB') # assert result['answer'] == 74 return get_problem()
def practical_test33(): link(A, F, B) link(D, C, B) link(F, E, D) link(A, E, C) set_angle('BAC', 35) set_angle('BDF', 42) perpendicular('DF', 'AB') get_angle('ACD') # assert result['answer'] == 83 return get_problem()
def practical_test29(): link(A, B) link(A, C) link(B, D, C) link(A, D) set_length('AB', 8) set_length('BD', 4) common_vertex_angles('A', ['B', 'D', 'C']) split_line('BC', 'D') set_angle('ABC', 60) get_length('AC') # assert result['answer'] == 8 return get_problem()
def practical_test44(): link(A, C) link(A, P) link(A, B) link(C, P, B) set_angle('ACB', 90) set_length('AC', 3) set_length('BC', 4) split_line('BC', 'P', 0.5) common_vertex_angles('A', ['C', 'P', 'B']) get_length('AP') # assert result['answer'] == 60 return get_problem()
def practical_test38(): link(A, G, H, B) link(B, D) link(D, H, P, C) link(C, E) link(E, P, G, F) link(F, A) set_angle('BAF', 20) set_angle('ABD', 40) set_angle('DCE', 60) set_angle('BDC', 80) set_angle('CEF', 90) get_angle('AFE') # assert result['answer'] == 70 return get_problem()
def practical_test4(): link(A, B) link(A, F) link(A, D) link(A, C) link(B, F, D, C) set_angle('ABC', 36) set_angle('ACB', 76) split_angle('BAC', 'AF', ratio=0.5) common_vertex_angles('A', ['B', 'F', 'D', 'C']) perpendicular('AD', 'BC') get_angle('DAF') # assert result['answer'] == 20 return get_problem()
def practical_test9(): link(A, C) link(A, D, B) link(B, F, C) link(D, F) set_angle('ACB', 90) perpendicular('DF', 'AB') set_length('AC', 1) set_length('AD', 1) set_length('BC', 1) get_length('BF') # assert abs(result['answer'] - (2 - 2**(1/2))) < 1e-3 return get_problem()
def practical_test21(): link(A, B) link(A, C) link(A, D) link(A, E) link(B, E, D, C) perpendicular('AD', 'BC') split_angle('BAC', 'AE') set_angle('ABC', 42) set_angle('ACB', 84) common_vertex_angles('A', ['B', 'E', 'D', 'C']) get_angle('AEC') # assert result['answer'] == 69 return get_problem()
def practical_test16(): link(A, B) link(A, D, C) link(B, D) link(B, E, C) link(D, E) set_angle('BAC', 90) set_length('AB', 4) set_length('BD', 5) perpendicular('DE', 'BC') split_angle('ABC', 'BD', 0.5) common_vertex_angles('B', ['A', 'D', 'C']) get_length('AD') # assert result['answer'] == 3 return get_problem()
def practical_test45(): link(A, B) link(A, C) link(D, B) link(D, C) link(B, C, E) set_angle('BAC', 50) set_angle('ABC', 60) split_angle('ABC', 'BD') split_angle('ACE', 'CD') common_vertex_angles('B', ['A', 'D', 'E']) common_vertex_angles('C', ['A', 'D', 'E']) get_angle('BDC') # assert result['answer'] == 25 return get_problem()
def practical_test23(): link(A, F, B) link(A, E, C) link(B, C) link(B, O, E) link(C, O, F) perpendicular('CF', 'AB') perpendicular('BE', 'AC') set_angle('BAC', 50) common_vertex_angles('B', ['A', 'E', 'C']) common_vertex_angles('C', ['A', 'F', 'B']) get_angle('BOC') # assert result['answer'] == 130 return get_problem()
def practical_test15(): link(A, E, B) link(A, D, C) link(B, C) link(B, D) link(D, E) parallel('ED', 'BC') split_angle('ABC', 'BD', 0.5) set_angle('BAC', 60) set_angle('BDC', 95) common_vertex_angles('B', ['A', 'D', 'C']) common_vertex_angles('D', ['E', 'B', 'C']) get_angle('DBC') # assert result['answer'] == 35 return get_problem()
def practical_test27(): link(A, B) link(A, C) link(B, D, C) link(A, D) set_angle('ABD', 50) split_line('BC', 'D') set_length('AB', 1) set_length('AC', 1) common_vertex_angles('A', ['B', 'D', 'C']) get_angle('BAD') # assert result['answer'] == 40 return get_problem()
def practical_test28(): link(A, B) link(A, E, C) link(B, D, C) link(B, F, E) link(A, F, D) set_angle('BAD', 45) set_angle('ACB', 60) perpendicular('AD', 'BC') perpendicular('BE', 'AC') common_vertex_angles('A', ['B', 'D', 'C']) common_vertex_angles('B', ['A', 'E', 'C']) get_angle('BFD') # assert result['answer'] == 60 return get_problem()
def practical_test34(): link(A, B) link(A, E, C) link(B, D, C) link(A, D) link(D, E) set_angle('ABC', 30) set_angle('ADE', 60) common_vertex_angles('A', ['B', 'D', 'C']) common_vertex_angles('D', ['B', 'A', 'E']) angle_equivalence('ABC', 'ACB') angle_equivalence('ADE', 'AED') get_angle('CDE') # assert result['answer'] == 30 return get_problem()
def practical_test8(): link(A, B) link(A, C) link(B, C) link(B, O) link(C, O) set_angle('BOC', 136) set_angle('ABC', 36) split_angle('ABC', 'BO', 0.5) split_angle('ACB', 'CO', 0.5) common_vertex_angles('B', ['A', 'O', 'C']) common_vertex_angles('C', ['A', 'O', 'B']) get_angle('BAC') # assert result['answer'] == 92 return get_problem()
def practical_test103(): link(A, E, B) link(A, F, C) link(B, D, C) link(D, E) link(D, F) perpendicular('DE', 'AB') perpendicular('FD', 'BC') set_angle('AFD', 158) common_vertex_angles('D', ['B', 'E', 'F']) angle_equivalence('ABC', 'ACB') get_angle('EDF') # assert result['answer'] == 68 return get_problem()
def practical_test17(): link(A, B) link(A, D, C) link(B, D) link(B, C) set_angle('BAC', 40) common_vertex_angles('B', ['A', 'D', 'C']) # Set as unit length. set_length('AB', 1) line_equivalence('AB', 'AC') line_equivalence('BD', 'BC') get_angle('ABD') # assert result['answer'] == 30 return get_problem()