Вопрос задан 13.07.2023 в 02:37. Предмет Информатика. Спрашивает Lisova Lida.

(Python) Вам нужно написать программу, которая запросит ввести оценки для четырёх учеников: Bill,

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

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

Внимание! Ответы на вопросы дают живые люди. Они могут содержать ошибочную информацию, заблуждения, а также ответы могут быть сгенерированы нейросетями. Будьте внимательны. Если вы уверены, что ответ неверный, нажмите кнопку "Пожаловаться" под ответом.
Отвечает Шевчук Саша.

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))

0 0
Отвечает нейросеть ChatGpt. Будьте внимательны, ответы нейросети могут содержать ошибочные или выдуманные данные.

Добро пожаловать в программирование! Ниже представлен Python-код для решения вашей задачи:

python
def 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()

Пояснения:

  1. Функция calculate_average принимает словарь оценок marks и вычисляет среднее арифметическое оценок для всей группы.

  2. В функции main, создаются список students, представляющий имена учеников, и пустой словарь marks, куда будем сохранять оценки для каждого ученика.

  3. В цикле for проходим по каждому ученику и запрашиваем ввод его оценки. Чтобы гарантировать, что пользователь вводит только числа, обернули input в цикл while и добавили обработку ошибки с помощью try-except.

  4. Оценки сохраняются в словарь marks с использованием имен учеников в качестве ключей.

  5. После ввода оценок для всех учеников, вызывается функция calculate_average, чтобы вычислить среднюю оценку для всей группы. Затем она округляется в большую сторону с помощью функции round.

  6. Наконец, программа выводит округленное среднее значение оценки для всей группы.

0 0

Похожие вопросы

Топ вопросов за вчера в категории Информатика

Последние заданные вопросы в категории Информатика

Задать вопрос