|
1 / 1 / 0
Регистрация: 28.02.2023
Сообщений: 24
|
|
Рассылка оценок19.03.2023, 15:10. Показов 1286. Ответов 1
Рассылка оценок
Преподаватель Елена Семеновна в конце семестра подсчитывает итоговую оценку и делает рассылку, где сообщает каждому студенту оценку, а несдавшим сообщает дату пересдачи. Оценка считается по такому правилу: накопленная оценка считается с коэффициентом 0.4, оценка за экзамен считается с коэффициентом 0.6, результат округляется. Напишите программу, которая посчитает итоговые оценки и сгенерирует тексты рассылок для Елены Семеновны. ФОРМАТ ВВОДА Структурированный файл students.csv в кодировке utf-8, где на каждой строке содержится информация о студенте, разделенная точкой с запятой: имя студента, адрес его электронной почты, накопленная оценка и оценка за экзамен по 10-балльной шкале. ФОРМАТ ВЫВОДА Текстовый файл emails.txt в кодировке utf-8, где для каждого студента записан текст для рассылки в следующем формате: "To: <адрес электронной почты> Добрый день, <имя студента>! Ваша итоговая оценка за курс - <оценка>." Далее для сдавших экзамен (получивших оценку 4 и выше) пишется строка "Хороших каникул!", а для несдавших - "Пересдача состоится 15 января в 10:00, место будет сообщено позднее." Рассылки должны быть записаны в файл в том же порядке, в каком имена студентов встречаются во входном файле. Для округления итоговой оценки используйте функцию round() ДОПОЛНИТЕЛЬНО В открытом тесте используются файлы students.csv и emails.txt. Вы можете скачать их и проверить свое решение локально. В примере в первой колонке отображается номер теста (0 — открытый тест), считывать это число или использовать его в вашем решении не нужно. есть код, но он не проходит скрытые тесты with open('students.csv', encoding='utf-8') as file1, open('emails.txt', 'w', encoding='utf-8') as file2: for line in file1.read().split('\n'): name, mail, total, exam = map(lambda x: int(x) if x.isdigit() else x, line.split(';')) res = round(total * 0.4 + exam * 0.6) txt = f'To: {mail}\n' \ f'Добрый день, {name}!\n' \ f'Ваша итоговая оценка за курс - {res}.\n' \ f'{("Пересдача состоится 15 января в 10:00, место будет сообщено позднее.", "Хороших каникул!")[res >= 4]}' file2.write(txt + '\n')
0
|
|
| 19.03.2023, 15:10 | |
|
Ответы с готовыми решениями:
1
Рассылка Рассылка
|
|
5237 / 3481 / 1176
Регистрация: 21.03.2016
Сообщений: 8,307
|
|
| 19.03.2023, 17:20 | |
|
del
0
|
|
| 19.03.2023, 17:20 | |
|
Помогаю со студенческими работами здесь
2
Среднее арифметическое оценок без неудов
Массив: найти дисциплину с максимальным количеством неудовлетворительных оценок Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Переходник USB-CAN-GPIO
Eddy_Em 20.03.2026
Достаточно давно на работе возникла необходимость в переходнике CAN-USB с гальваноразвязкой, оный и был разработан. Однако, все меня терзала совесть, что аж 48-ногий МК используется так тупо: просто. . .
|
Оттенки серого
Argus19 18.03.2026
Оттенки серого
Нашёл в интернете 3 прекрасных модуля:
Модуль класса открытия диалога открытия/ сохранения файла на Win32 API;
Модуль класса быстрого перекодирования цветного изображения в оттенки. . .
|
SDL3 для Desktop (MinGW): Рисуем цветные прямоугольники с помощью рисовальщика SDL3 на Си и C++
8Observer8 17.03.2026
Содержание блога
Финальные проекты на Си и на C++:
finish-rectangles-sdl3-c. zip
finish-rectangles-sdl3-cpp. zip
|
Символические и жёсткие ссылки в Linux.
algri14 15.03.2026
Существует два типа ссылок — символические и жёсткие.
Ссылка в Linux — это запись в каталоге, которая может указывать либо на inode «файла-ИСТОЧНИКА», тогда это будет «жёсткая ссылка» (hard link),. . .
|
|
[Owen Logic] Поддержание уровня воды в резервуаре количеством включённых насосов: моделирование и выбор регулятора
ФедосеевПавел 14.03.2026
Поддержание уровня воды в резервуаре количеством включённых насосов: моделирование и выбор регулятора
ВВЕДЕНИЕ
Выполняя задание на управление насосной группой заполнения резервуара,. . .
|
делаю науч статью по влиянию грибов на сукцессию
anaschu 13.03.2026
прикрепляю статью
|
SDL3 для Desktop (MinGW): Создаём пустое окно с нуля для 2D-графики на SDL3, Си и C++
8Observer8 10.03.2026
Содержание блога
Финальные проекты на Си и на C++:
hello-sdl3-c. zip
hello-sdl3-cpp. zip
Результат:
|
Установка CMake и MinGW 13.1 для сборки С и C++ приложений из консоли и из Qt Creator в EXE
8Observer8 10.03.2026
Содержание блога
MinGW - это коллекция инструментов для сборки приложений в EXE. CMake - это система сборки приложений. Здесь описаны базовые шаги для старта программирования с помощью CMake и. . .
|