Давайте разберем задачу пошагово.
У нас есть три строки:
- Первая строка — фамилии и имена учеников, разделенные запятыми и пробелом.
- Вторая строка — оценки учеников, разделенные пробелами.
- Третья строка — число, которая обозначает интересующую учителя оценку.
Задача: найти в списке первый ученик (по порядку), который получил оценку, равную x.
Шаги решения:
Разбор входных данных
- Разделить первую строку по запятым, чтобы получить список учеников.
- Разделить вторую строку по пробелам, чтобы получить список оценок.
- Преобразовать третью строку в число
x.
Обработка данных
- Перебрать список учеников и списков оценок параллельно.
- Для каждого ученика проверить, равна ли его оценка
x. - Как только найдется первый ученик, удовлетворяющий условию, вывести его имя и фамилию.
Вывод
- Если такой ученик есть, вывести его имя и фамилию.
- Если нет — ничего не указано в условии, можно вывести пустую строку или ничего.
Реализуем решение:
# Входные данные (по условию, они могут быть получены через input())
students_str = "Петров Петр, Александрова Александра, Сонина Софья"
grades_str = "4 5 5"
x = 5
# 1. Разделение данных
students_list = [student.strip() for student in students_str.split(',')]
grades_list = grades_str.split()
# 2. Перебор и поиск первого ученика с нужной оценкой
for student, grade in zip(students_list, grades_list):
if int(grade) == x:
print(student)
break
Итог:
Для предоставленных данных x=5, первый ученик, получивший 5, — Александрова Александра.
Если нужно — я могу подготовить пример, где все данные вводятся через input(), или же подготовлю объяснение для другого варианта.