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()
Ejemplo n.º 3
0
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()
Ejemplo n.º 7
0
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()
Ejemplo n.º 9
0
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()
Ejemplo n.º 11
0
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()
Ejemplo n.º 12
0
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()
Ejemplo n.º 16
0
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()
Ejemplo n.º 17
0
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()
Ejemplo n.º 20
0
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()
Ejemplo n.º 24
0
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()
Ejemplo n.º 25
0
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()
Ejemplo n.º 26
0
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()
Ejemplo n.º 27
0
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()
Ejemplo n.º 28
0
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()
Ejemplo n.º 29
0
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()