Example #1
0
 def get_assessment_score(assessment):
     loop = True
     while loop:
         score = input("Enter student score for " + assessment['name'] +
                       ":")
         if not Helper.is_int(score):
             print("\nScrole should be integer")
         if score and Helper.is_int(score):
             if int(score) > 100:
                 print("\nScore can't be greater than 100")
             else:
                 loop = False
     return score
Example #2
0
    def read_assessments(assessments_number):
        total_weight = 0
        assessments_number = int(assessments_number)
        assessments = []
        for x in range(0, assessments_number):
            print("\nData For assessment number:", x + 1)
            valid_assessment = False
            assessments_name_check = True
            assessments_weight_check = True

            while not valid_assessment:
                if assessments_name_check:
                    assessments_name = input("Assessment name: ")
                    if assessments_name:
                        assessments_name_check = False
                if not assessments_name_check and assessments_weight_check:
                    if x == (assessments_number - 1):
                        valid_int_weight = True
                        assessments_weight = 100 - total_weight
                        valid_assessment = True
                        assessments.append({
                            'name': assessments_name,
                            'weight': assessments_weight
                        })
                    else:
                        assessments_weight = input("Assessment weight: ")
                        valid_int_weight = Helper.is_int(assessments_weight)

                        if not valid_int_weight:
                            print(
                                '\nInvalid, Please enter number greated than 0 and less than 100'
                            )
                        else:
                            assessments_weight = int(assessments_weight)
                            if total_weight + assessments_weight > 100:
                                print(
                                    '\nInvalid, total assessments weight can pass 100, weight available is',
                                    100 - total_weight)
                            else:
                                assessments_weight = assessments_weight
                                total_weight += assessments_weight
                                valid_assessment = True
                                assessments.append({
                                    'name': assessments_name,
                                    'weight': assessments_weight
                                })

        return assessments
Example #3
0
    def new_module():
        module_name_check = True
        module_code_check = True
        should_ask_for_assessment = False
        have_valid_assessment = False
        valid_assessments_number = 0
        while module_name_check or module_code_check or should_ask_for_assessment:
            if module_name_check:
                module_name = input("Module name: ")
                if module_name:
                    module_name_check = False

            if not module_name_check and module_code_check:
                module_code = input("Module Code: ")
                if module_code:
                    module_code_check = False
                    should_ask_for_assessment = True

            if should_ask_for_assessment:
                assessments_number = input("Number of Assessments: ")
                if assessments_number:
                    valid_assessments_number = Helper.is_int(
                        assessments_number)
                    if not valid_assessments_number:
                        print(
                            '\nInvalid, Only integer number allowed, Please enter number greater than 1'
                        )
                    else:
                        should_ask_for_assessment = False
                        have_valid_assessment = True
                        module_assessments = Reader.read_assessments(
                            assessments_number)

        module = {
            'name': module_name,
            'code': module_code,
            'assessments': module_assessments
        }
        module = Module(module)
        Reader.save_module(module)