# What's wrong with code for 9/9

#1

I am getting the error message "one of the following is missing or broken when we tried to use it: alice, lloyd, tyler, students, get_class_average, get_letter_grade"
Everything cleared until section 9/9 when I tried to print on the last two lines...what's going on?

lloyd = {
"name": "Lloyd",
"homework": [90.0, 97.0, 75.0, 92.0],
"quizzes": [88.0, 40.0, 94.0],
"tests": [75.0, 90.0]
}
alice = {
"name": "Alice",
"homework": [100.0, 92.0, 98.0, 100.0],
"quizzes": [82.0, 83.0, 91.0],
"tests": [89.0, 97.0]
}
tyler = {
"name": "Tyler",
"homework": [0.0, 87.0, 75.0, 22.0],
"quizzes": [0.0, 75.0, 78.0],
"tests": [100.0, 100.0]
}

def average(numbers):
total = sum(numbers)
total = float(total)
total/=len(numbers)
def get_average(student):
homework = average(student["homework"])
quizzes = average(student["quizzes"])
tests = average(student["tests"])
total = .1*average(student["homework"]) + .3*average(student["quizzes"]) + .6*average(student["tests"])
if score >= 90:
return "A"
elif score >= 80:
return "B"
elif score >= 70:
return "C"
elif score >= 60:
return "D"
else:
return "F"
def get_class_average(students):
results = []
students = [lloyd, alice, tyler]
for student in students:
results.append(get_average(student))
return average(students)
print get_class_average(students)

#2

``````def get_class_average(students):
results = []
students = [lloyd, alice, tyler]
for student in students:
results.append(get_average(student))
return average(students)``````

You should not be declaring a list inside the function as these students names, the function is meant to be called with any set of data.

Declare your list outside of the function, and it should work.

#3

mine isnt working but i thought i got everything right...

``````lloyd = {
"name": "Lloyd",
"homework": [90.0, 97.0, 75.0, 92.0],
"quizzes": [88.0, 40.0, 94.0],
"tests": [75.0, 90.0]
}
alice = {
"name": "Alice",
"homework": [100.0, 92.0, 98.0, 100.0],
"quizzes": [82.0, 83.0, 91.0],
"tests": [89.0, 97.0]
}
tyler = {
"name": "Tyler",
"homework": [0.0, 87.0, 75.0, 22.0],
"quizzes": [0.0, 75.0, 78.0],
"tests": [100.0, 100.0]
}

def average(numbers):
total=sum(numbers)
total=float(total)
total=total/len(numbers)
def get_average(student):
homework=(average(student["homework"]))
quizzes=(average(student["quizzes"]))
tests=(average(student["tests"]))
return (.10*homework+.30*quizzes+.60*tests)
if score>=90:
return "A"
elif score>=80:
return "B"
elif score>=70:
return "C"
elif score>=60:
return "D"
else:
return "F"
def get_class_average(students):
results=[]
students=[lloyd,alice,tyler]
for student in students:
results.append(get_average(student))
return average(students)
print get_class_average(students)