def add_cs_math_courses(course_list, is_honors):

        math_course_list = []

        if is_honors:
                math_course_list.append(process_courses.pop_course("MATH1941", course_list))
                math_course_list.append(process_courses.pop_course("MATH1942", course_list))
        else:
                math_course_list.append(process_courses.pop_course("MATH1041", course_list))
                math_course_list.append(process_courses.pop_course("MATH1042", course_list))

        return math_course_list
def add_isnt_math_courses(course_list, is_honors):

        math_course_list = []

        if is_honors:
                math_course_list.append(process_courses.pop_course("MATH1941", course_list))
        else:
                if random.random() > 0.33:
                        math_course_list.append(process_courses.pop_course("MATH1041", course_list))
                else:
                        math_course_list.append(process_courses.pop_course("MATH1031", course_list))

        return math_course_list
def add_free_electives(completed_courses, course_list, is_honors,
                       credit_count):
    free_elective_course_list = []
    while credit_count < 123.0:
        matching_course_list = update_matching_course_list(
            completed_courses, free_elective_course_list, course_list)
        selected_course = matching_course_list[random.randint(
            0,
            len(matching_course_list) - 1)]
        free_elective_course_list.append(
            process_courses.pop_course(selected_course.name, course_list))
        credit_count += selected_course.credits

    return free_elective_course_list
Example #4
0
def add_geneds(course_list, is_honors):
    gened_course_list = []
    attributes = ["GW", "GY", "GZ", "GA", "GB", "GD", "GG", "GU"]

    for attribute in attributes:
        matching_course_list = []
        for course in course_list:
            if is_honors:
                # if list(course.attributes).__contains__(attribute) and (int(course.number) / 900) == 0:
                if list(course.attributes).__contains__(attribute):
                    matching_course_list.append(course)
            else:
                if list(course.attributes).__contains__(attribute) and (
                        int(course.number) / 900) != 0:
                    matching_course_list.append(course)

        selected_course = matching_course_list[random.randint(
            0,
            len(matching_course_list) - 1)]
        gened_course_list.append(
            process_courses.pop_course(selected_course.name, course_list))

    return gened_course_list
def add_isnt_core_courses(course_list, is_honors):

    core_course_list = []

    core_course_list.append(process_courses.pop_course("CIS1001", course_list))

    # Roughly even split of classes offered between 1057 and 1051
    if random.random() > .5:
        core_course_list.append(
            process_courses.pop_course("CIS1051", course_list))
    else:
        core_course_list.append(
            process_courses.pop_course("CIS1057", course_list))

    if is_honors:
        core_course_list.append(
            process_courses.pop_course("CIS1968", course_list))
    else:
        core_course_list.append(
            process_courses.pop_course("CIS1068", course_list))

    if is_honors:
        core_course_list.append(
            process_courses.pop_course("CIS1966", course_list))
    else:
        core_course_list.append(
            process_courses.pop_course("CIS1166", course_list))

    core_course_list.append(process_courses.pop_course("CIS2109", course_list))
    core_course_list.append(process_courses.pop_course("CIS2168", course_list))
    core_course_list.append(process_courses.pop_course("CIS2229", course_list))
    core_course_list.append(process_courses.pop_course("CIS3309", course_list))
    core_course_list.append(process_courses.pop_course("CIS3329", course_list))
    core_course_list.append(process_courses.pop_course("CIS3342", course_list))
    core_course_list.append(process_courses.pop_course("CIS3344", course_list))
    core_course_list.append(process_courses.pop_course("CIS4296", course_list))
    core_course_list.append(process_courses.pop_course("CIS4396", course_list))

    return core_course_list
def add_cs_core_courses(course_list, is_honors):

    core_course_list = []

    core_course_list.append(process_courses.pop_course("CIS1001", course_list))

    # Roughly even split of classes offered between 1057 and 1051
    if random.random() > .5:
        core_course_list.append(
            process_courses.pop_course("CIS1051", course_list))
    else:
        core_course_list.append(
            process_courses.pop_course("CIS1057", course_list))

    if is_honors:
        core_course_list.append(
            process_courses.pop_course("CIS1968", course_list))
    else:
        core_course_list.append(
            process_courses.pop_course("CIS1068", course_list))

    if is_honors:
        core_course_list.append(
            process_courses.pop_course("CIS1966", course_list))
    else:
        core_course_list.append(
            process_courses.pop_course("CIS1166", course_list))

    core_course_list.append(process_courses.pop_course("CIS2033", course_list))
    core_course_list.append(process_courses.pop_course("CIS2107", course_list))
    core_course_list.append(process_courses.pop_course("CIS2166", course_list))
    core_course_list.append(process_courses.pop_course("CIS2168", course_list))
    core_course_list.append(process_courses.pop_course("CIS3207", course_list))
    core_course_list.append(process_courses.pop_course("CIS3223", course_list))
    core_course_list.append(process_courses.pop_course("CIS3296", course_list))

    process_courses.find_course("CIS4398",
                                course_list).prereqs[1].append("CIS3296")

    if random.random() > probability.capstone:
        core_course_list.append(
            process_courses.pop_course("CIS4398", course_list))
    else:
        process_courses.find_course("CIS4397", course_list).prereqs = \
                process_courses.find_course("CIS4398", course_list).prereqs
        core_course_list.append(
            process_courses.pop_course("CIS4397", course_list))

    return core_course_list
def add_cs_lab_science_courses(course_list, is_honors):

    lab_science_course_list = []
    r = random.random()

    sequence_probability = probability.biology_sequence
    if r <= sequence_probability:
        if is_honors:
            lab_science_course_list.append(
                process_courses.pop_course("CHEM1951", course_list))
            lab_science_course_list.append(
                process_courses.pop_course("CHEM1952", course_list))
            lab_science_course_list.append(
                process_courses.pop_course("CHEM2921", course_list))
            lab_science_course_list.append(
                process_courses.pop_course("BIOL1911", course_list))
            lab_science_course_list.append(
                process_courses.pop_course("BIOL2912", course_list))
        else:
            lab_science_course_list.append(
                process_courses.pop_course("CHEM1031", course_list))
            lab_science_course_list.append(
                process_courses.pop_course("CHEM1032", course_list))
            lab_science_course_list.append(
                process_courses.pop_course("CHEM2211", course_list))
            lab_science_course_list.append(
                process_courses.pop_course("BIOL1111", course_list))
            lab_science_course_list.append(
                process_courses.pop_course("BIOL2112", course_list))

        return lab_science_course_list

    sequence_probability += probability.chemistry_sequence
    if r <= sequence_probability:
        if is_honors:
            lab_science_course_list.append(
                process_courses.pop_course("CHEM1951", course_list))
            lab_science_course_list.append(
                process_courses.pop_course("CHEM1953", course_list))
            lab_science_course_list.append(
                process_courses.pop_course("CHEM1952", course_list))
            lab_science_course_list.append(
                process_courses.pop_course("CHEM1954", course_list))
        else:
            lab_science_course_list.append(
                process_courses.pop_course("CHEM1031", course_list))
            lab_science_course_list.append(
                process_courses.pop_course("CHEM1033", course_list))
            lab_science_course_list.append(
                process_courses.pop_course("CHEM1032", course_list))
            lab_science_course_list.append(
                process_courses.pop_course("CHEM1034", course_list))

        return lab_science_course_list

    sequence_probability += probability.ees_sequence
    if r <= sequence_probability:
        lab_science_course_list.append(
            process_courses.pop_course("EES2001", course_list))

        if is_honors:
            lab_science_course_list.append(
                process_courses.pop_course("CHEM1951", course_list))
        else:
            lab_science_course_list.append(
                process_courses.pop_course("CHEM1031", course_list))

        if random.random() <= probability.minerology:
            lab_science_course_list.append(
                process_courses.pop_course("EES2011", course_list))
        else:
            lab_science_course_list.append(
                process_courses.pop_course("EES2061", course_list))

        return lab_science_course_list

    else:
        if random.random() <= probability.classical_physics:
            if is_honors:
                lab_science_course_list.append(
                    process_courses.pop_course("PHYS1961", course_list))
                lab_science_course_list.append(
                    process_courses.pop_course("PHYS1962", course_list))
            else:
                lab_science_course_list.append(
                    process_courses.pop_course("PHYS1061", course_list))
                lab_science_course_list.append(
                    process_courses.pop_course("PHYS1062", course_list))
        else:
            if is_honors:
                lab_science_course_list.append(
                    process_courses.pop_course("PHYS2921", course_list))
                lab_science_course_list.append(
                    process_courses.pop_course("PHYS2922", course_list))
            else:
                lab_science_course_list.append(
                    process_courses.pop_course("PHYS2021", course_list))
                lab_science_course_list.append(
                    process_courses.pop_course("PHYS2022", course_list))

        return lab_science_course_list
Example #8
0
def add_isnt_elective_courses(course_list, is_honors):

        elective_credit_count = 0.0
        elective_taken_list = []
        has_math = False

        process_courses.find_course("CIS4282", course_list).prereqs = \
                process_courses.find_course("CIS3603", course_list).prereqs

        cis_elective_list = []
        cis_elective_list.append(process_courses.find_course("CIS3281", course_list))
        cis_elective_list.append(process_courses.find_course("CIS3374", course_list))
        cis_elective_list.append(process_courses.find_course("CIS3376", course_list))
        cis_elective_list.append(process_courses.find_course("CIS3515", course_list))
        cis_elective_list.append(process_courses.find_course("CIS3603", course_list))
        cis_elective_list.append(process_courses.find_course("CIS3605", course_list))
        cis_elective_list.append(process_courses.find_course("CIS3715", course_list))
        cis_elective_list.append(process_courses.find_course("CIS3775", course_list))
        cis_elective_list.append(process_courses.find_course("CIS4105", course_list))
        cis_elective_list.append(process_courses.find_course("CIS4106", course_list))
        cis_elective_list.append(process_courses.find_course("CIS4108", course_list))
        cis_elective_list.append(process_courses.find_course("CIS4282", course_list))
        cis_elective_list.append(process_courses.find_course("CIS4330", course_list))
        cis_elective_list.append(process_courses.find_course("CIS4340", course_list))
        cis_elective_list.append(process_courses.find_course("CIS4344", course_list))
        cis_elective_list.append(process_courses.find_course("CIS4350", course_list))
        cis_elective_list.append(process_courses.find_course("CIS4362", course_list))
        cis_elective_list.append(process_courses.find_course("CIS4376", course_list))
        cis_elective_list.append(process_courses.find_course("CIS4378", course_list))
        cis_elective_list.append(process_courses.find_course("CIS4515", course_list))
        cis_elective_list.append(process_courses.find_course("CIS4615", course_list))
        cis_elective_list.append(process_courses.find_course("CIS4625", course_list))

        while elective_credit_count < 12.0:

                r = random.randint(0, len(cis_elective_list) - 1)
                elective_credit_count += int(cis_elective_list[r].credits)
                if cis_elective_list[r].name == "CIS3715" and process_courses.find_course("CIS2166", elective_taken_list) == None:
                        if is_honors:
                                if process_courses.find_course("MATH1941", course_list) != None:
                                        elective_credit_count += int(
                                                process_courses.find_course("MATH1941", course_list).credits)
                                        elective_taken_list.append(process_courses.pop_course("MATH1941", course_list))
                        else:
                                if process_courses.find_course("MATH1041", course_list) != None:
                                        elective_credit_count += int(
                                                process_courses.find_course("MATH1041", course_list).credits)
                                        elective_taken_list.append(process_courses.pop_course("MATH1041", course_list))
                        elective_credit_count += int(process_courses.find_course("CIS2166", course_list).credits)
                        elective_taken_list.append(process_courses.pop_course("CIS2166", course_list))
                        r -= 0
                if cis_elective_list[r].name == "CIS4515" and process_courses.find_course("CIS3515", elective_taken_list) == None:
                        elective_credit_count += int(process_courses.find_course("CIS3515", cis_elective_list).credits)
                        elective_taken_list.append(process_courses.pop_course("CIS3515", cis_elective_list))
                        r -= 1
                if cis_elective_list[r].name == "CIS4615" and process_courses.find_course("CIS3319", elective_taken_list) == None:
                        elective_credit_count += int(process_courses.find_course("CIS2107", course_list).credits)
                        elective_taken_list.append(process_courses.pop_course("CIS2107", course_list))
                        elective_credit_count += int(process_courses.find_course("CIS3319", course_list).credits)
                        elective_taken_list.append(process_courses.pop_course("CIS3319", course_list))
                        r -= 0
                if cis_elective_list[r].name == "CIS4625" and process_courses.find_course("CIS4378", elective_taken_list) == None:
                        elective_credit_count += int(process_courses.find_course("CIS4378", cis_elective_list).credits)
                        elective_taken_list.append(process_courses.pop_course("CIS4378", cis_elective_list))
                        r -= 1
                elective_taken_list.append(
                        process_courses.pop_course(cis_elective_list.pop(r).name, course_list))

        return elective_taken_list
Example #9
0
def add_cs_elective_courses(course_list, is_honors):

        elective_credit_count = 0.0
        elective_taken_list = []
        has_math = False

        process_courses.find_course("CIS4282", course_list).prereqs = \
                process_courses.find_course("CIS3603", course_list).prereqs

        cis_elective_list = []
        cis_elective_list.append(process_courses.find_course("CIS3203", course_list))
        cis_elective_list.append(process_courses.find_course("CIS3211", course_list))
        cis_elective_list.append(process_courses.find_course("CIS3219", course_list))
        cis_elective_list.append(process_courses.find_course("CIS3242", course_list))
        cis_elective_list.append(process_courses.find_course("CIS3308", course_list))
        cis_elective_list.append(process_courses.find_course("CIS3319", course_list))
        cis_elective_list.append(process_courses.find_course("CIS3381", course_list))
        cis_elective_list.append(process_courses.find_course("CIS3515", course_list))
        cis_elective_list.append(process_courses.find_course("CIS3603", course_list))
        cis_elective_list.append(process_courses.find_course("CIS3715", course_list))
        cis_elective_list.append(process_courses.find_course("CIS4282", course_list))
        cis_elective_list.append(process_courses.find_course("CIS4305", course_list))
        cis_elective_list.append(process_courses.find_course("CIS4307", course_list))
        cis_elective_list.append(process_courses.find_course("CIS4308", course_list))
        cis_elective_list.append(process_courses.find_course("CIS4319", course_list))
        cis_elective_list.append(process_courses.find_course("CIS4324", course_list))
        cis_elective_list.append(process_courses.find_course("CIS4331", course_list))
        cis_elective_list.append(process_courses.find_course("CIS4350", course_list))
        cis_elective_list.append(process_courses.find_course("CIS4360", course_list))
        cis_elective_list.append(process_courses.find_course("CIS4382", course_list))
        cis_elective_list.append(process_courses.find_course("CIS4515", course_list))
        cis_elective_list.append(process_courses.find_course("CIS4615", course_list))

        math_elective_list = []
        math_elective_list.append(process_courses.find_course("MATH2101", course_list))
        math_elective_list.append(process_courses.find_course("MATH2103", course_list))
        math_elective_list.append(process_courses.find_course("MATH2043", course_list))

        open_elective_list = cis_elective_list + math_elective_list
        while elective_credit_count < 15.0:

                if has_math:
                        r = random.randint(0, len(open_elective_list) - 1)
                        elective_credit_count += int(open_elective_list[r].credits)
                        if open_elective_list[r].name == "CIS4515" and process_courses.find_course("CIS3515", elective_taken_list) == None:
                                elective_credit_count += int(process_courses.find_course("CIS3515", open_elective_list).credits)
                                elective_taken_list.append(process_courses.pop_course("CIS3515", open_elective_list))
                                r -= 1
                        if open_elective_list[r].name == "CIS4615" and process_courses.find_course("CIS3319", elective_taken_list) == None:
                                elective_credit_count += int(process_courses.find_course("CIS3319", open_elective_list).credits)
                                elective_taken_list.append(process_courses.pop_course("CIS3319", open_elective_list))
                                r -= 1
                        elective_taken_list.append(
                                process_courses.pop_course(open_elective_list.pop(r).name, course_list))

                else:
                        r = random.randint(0, len(open_elective_list) - 1)
                        elective_credit_count += int(open_elective_list[r].credits)
                        if math_elective_list.__contains__(open_elective_list[r]):
                                has_math = True
                                elective_taken_list.append(
                                        process_courses.pop_course(open_elective_list[r].name, course_list))
                                for each in math_elective_list:
                                        open_elective_list.remove(each)
                        else:
                                if open_elective_list[r].name == "CIS4515" and process_courses.find_course("CIS3515", elective_taken_list) == None:
                                        elective_credit_count += int(process_courses.find_course("CIS3515", open_elective_list).credits)
                                        elective_taken_list.append(process_courses.pop_course("CIS3515", open_elective_list))
                                        r -= 1
                                if open_elective_list[r].name == "CIS4615" and process_courses.find_course("CIS3319", elective_taken_list) == None:
                                        elective_credit_count += int(process_courses.find_course("CIS3319", open_elective_list).credits)
                                        elective_taken_list.append(process_courses.pop_course("CIS3319", open_elective_list))
                                        r -= 1
                                elective_taken_list.append(
                                        process_courses.pop_course(open_elective_list.pop(r).name, course_list))

        return elective_taken_list