#lab assignment solution nov 29 - with function #Discussion: #functions: #1. pass_fail - has one parameter - list of grades #returns two new lists: list of passing grades and list of failing grades #2. average - has one parameter list, returns average of the list elements #3. make_list_random - this function we wrote already import random def make_list_random(size, min_limit, max_limit): my_list=[] for i in range(size): n=random.randint(min_limit, max_limit) my_list.append(n) return my_list def pass_fail(my_list): pass_list=[] fail_list=[] for i in range(len(my_list)): if(my_list[i]>=60): pass_list.append(my_list[i]) else: fail_list.append(my_list[i]) return pass_list, fail_list def average(my_list): total=0 for i in range(len(my_list)): total+=my_list[i] ave=total/len(my_list) return ave def main(): size=random.randint(5,15) print("size", size) my_list=make_list_random(size, 0, 100) print("grades are", my_list) pass_list, fail_list=pass_fail(my_list) if(len(pass_list)>0): print("passing grades are", pass_list) print("their average is", average(pass_list)) else: print("nobody passed the class") if(len(fail_list)>0): print("failing grades are", fail_list) print("their average is", average(fail_list)) else: print("nobody failed") main()