
(Python) Вам нужно написать программу, которая запросит ввести оценки для четырёх учеников: Bill,
Jane, John, Mary. В конце необходимо вывести среднюю оценку для всей группы, округлённую в большую сторону. Предполагайте, что пользователь вводит только числа в оценки. Средняя оценка вычисляется как среднее арифметическое - сумма всех оценок, делённая на количество учеников. Что должно присутствовать в коде программы: Каждую оценку нужно сохранять в словаре marks. В качестве ключей использовать имена учеников. Для подсчёта суммы обращаться к каждой записи в словаре по ключу.

Ответы на вопрос

marks = {'Bill': int(input()), 'Jane': int(input()), 'John': int(input()), 'Mary': int(input())}
average = 0
for key in marks.keys():
average += marks[key]
print(round(average / 4))
'округлённую в большую сторону'
Если нужно округлять всегда в большую сторону(то есть из 4.1 выводить среднюю 5), то в начале программы пишешь:
import math
, а в конце вместо 'print(round(average / 4))', пишешь:
print(math.ceil(average / 4))



Добро пожаловать в программирование! Ниже представлен Python-код для решения вашей задачи:
pythondef calculate_average(marks):
total_marks = sum(marks.values())
num_students = len(marks)
average = total_marks / num_students
return average
def main():
students = ["Bill", "Jane", "John", "Mary"]
marks = {}
for student in students:
while True:
try:
score = int(input(f"Введите оценку для {student}: "))
break
except ValueError:
print("Пожалуйста, введите только числовое значение.")
marks[student] = score
average_score = calculate_average(marks)
rounded_average = round(average_score)
print(f"Средняя оценка для всей группы: {rounded_average}")
if __name__ == "__main__":
main()
Пояснения:
Функция
calculate_average
принимает словарь оценокmarks
и вычисляет среднее арифметическое оценок для всей группы.В функции
main
, создаются списокstudents
, представляющий имена учеников, и пустой словарьmarks
, куда будем сохранять оценки для каждого ученика.В цикле
for
проходим по каждому ученику и запрашиваем ввод его оценки. Чтобы гарантировать, что пользователь вводит только числа, обернулиinput
в циклwhile
и добавили обработку ошибки с помощьюtry-except
.Оценки сохраняются в словарь
marks
с использованием имен учеников в качестве ключей.После ввода оценок для всех учеников, вызывается функция
calculate_average
, чтобы вычислить среднюю оценку для всей группы. Затем она округляется в большую сторону с помощью функцииround
.Наконец, программа выводит округленное среднее значение оценки для всей группы.


Похожие вопросы
Топ вопросов за вчера в категории Информатика
Последние заданные вопросы в категории Информатика
-
Математика
-
Литература
-
Алгебра
-
Русский язык
-
Геометрия
-
Английский язык
-
Химия
-
Физика
-
Биология
-
Другие предметы
-
История
-
Обществознание
-
Окружающий мир
-
География
-
Українська мова
-
Информатика
-
Українська література
-
Қазақ тiлi
-
Экономика
-
Музыка
-
Право
-
Беларуская мова
-
Французский язык
-
Немецкий язык
-
МХК
-
ОБЖ
-
Психология
-
Физкультура и спорт
-
Астрономия
-
Кыргыз тили
-
Оʻzbek tili