помогите пожалуйста
# Написать скрипт который проходится по ключам и проверяет значения
# a) Если значение делиться на 3, то записываем строку “Hi”
# b) Если значение делиться на 5, то записываем строку “Bye”
# ПРИМЕР:
# Дано -> dict1 = {'a': 5, 'b': 3, 'c': 8, 'd': 14}
# Результат -> a = Bye
# b = Hi
-----------------------------------------------------------------
Написать программу калькулятор оценок. Даны списки оценок с
предметами трех студентов. В каждом списке содержиться 7
предметов с оценками, необходимо сконвертировать в словарь и
найти средний балл оценок данных студентов. И выбрать лучшего
студента в группе.
Например:
ввод данных John = [[algebra“, 100], [„biologia“, 84], [„fizika“: 61]]
вывод: оценки
John : {'algebra': 100, 'biologia': 84, 'fizika': 61}
Средний балл
John : 81 балл
Лучшим студентом является: {имя студенто у которго больше всех
балл}
Ответы
1:
dict1 = {'a': 5, 'b': 3, 'c': 8, 'd': 14}
for key, value in dict1.items():
if value % 3 == 0:
print(f"{key} = Hi")
elif value % 5 == 0:
print(f"{key} = Bye")
2:
students = {
'John': [['algebra', 100], ['biologia', 84], ['fizika', 61]],
'Mike': [['algebra', 95], ['biologia', 88], ['fizika', 70]],
'Kate': [['algebra', 90], ['biologia', 82], ['fizika', 80]],
}
scores = {}
for student, grades in students.items():
scores[student] = {}
for grade in grades:
subject, score = grade
scores[student][subject] = score
for student, grades in scores.items():
total_score = 0
for subject, score in grades.items():
total_score += score
avg_score = total_score / len(grades)
print(f'{student}: {avg_score:.2f}')
best_student = max(scores, key=lambda x: sum(scores[x].values()))
print(f'Лучшим студентом является: {best_student}')