In deze oefening vertrekken we van een gegeven dictionary met punten voor de verschillende onderdelen van dit vak. De sleutel is de naam van de student en de waarde voor elke student is opnieuw een dictionary met als sleutel de benaming van het onderdeel en als waarde de punten (op 20). Als de student afwezig was voor een onderdeel, dan ontbreekt dit in de dictionary. De dictionary ziet er bijvoorbeeld zo uit:
{
"Berry Westra": { "Theorie": 12, "Recursie": 14, "Oefeningen": 18},
"Mike Lawrence": { "Theorie": 8, "Recursie": 6, "Oefeningen": 9},
"Victor Mollo": { "Theorie": 12, "Recursie": 4, "Oefeningen": 14},
"Michel Lebel": { "Theorie": 18},
"Terence Reece": { "Recursie": 4, "Oefeningen": 14}
}
Schrijf een functie eindcijfer die voor elke student het eindcijfer als volgt berekent:
Als een cijfer voor één van de onderdelen ontbreekt, dan wordt een nulscore toegekend voor dat onderdeel. Het eindcijfer is een geheel getal op twintig (afgerond volgens de standaardafronding van Python).
De functie retourneert een dictionary met als sleutel de naam van de student en als waarde het behaalde eindcijfer (int).
>>> punten = {
"Berry Westra": { "Theorie": 12, "Recursie": 14, "Oefeningen": 18},
"Mike Lawrence": { "Theorie": 8, "Recursie": 6, "Oefeningen": 9},
"Victor Mollo": { "Theorie": 12, "Recursie": 4, "Oefeningen": 14},
"Michel Lebel": { "Theorie": 18},
"Terence Reece": { "Recursie": 4, "Oefeningen": 14}
}
>>> eindcijfer(punten)
{'Berry Westra': 16, 'Mike Lawrence': 8, 'Victor Mollo': 11, 'Michel Lebel': 4, 'Terence Reece': 8}
>>> groepeer(punten)
{4: {'Michel Lebel'}, 8: {'Mike Lawrence', 'Terence Reece'}, 11: {'Victor Mollo'}, 16: {'Berry Westra'}}