
Всем добрый день, прошу помощи с задачкой на python. Условие: Класс написал контрольную. Если все
оценки одинаковые, учитель понимает, что ученики списали друг у друга и надо дать контрольную снова. Если разные, то не надо. Дана последовательность оценок и 0 в конце. Если все цифры в столбце одинаковые, выведи "ДА", иначе "НЕТ".Ввод Вывод5 ДА55550

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

marks = []
while True:
mark = int(input('Введите оценку: '))
if mark == 0:
break
marks.append(mark)
if len(marks) == marks.count(marks[0]):
print('ДА')
else:
print('НЕТ')



Для решения данной задачи на Python можно использовать следующий подход:
1. Создайте переменную `grades` и присвойте ей вводные данные в виде строки. 2. Используя метод `split()`, разделите строку на отдельные оценки и сохраните их в список `grades_list`. 3. Удалите последний элемент списка, который является нулем, с помощью метода `pop()`. 4. Проверьте, все ли оценки в списке одинаковые, используя функцию `all()` и генератор списка. Преобразуйте каждую оценку в целое число с помощью функции `int()`. 5. Если все оценки одинаковые, выведите "ДА", иначе выведите "НЕТ".
Вот пример реализации:
```python grades = "5 ДА 5 5 5 0" grades_list = grades.split() grades_list.pop()
if all(int(grade) == int(grades_list[0]) for grade in grades_list): print("ДА") else: print("НЕТ") ```
Результат выполнения данного кода будет "ДА", так как все оценки в списке одинаковые.


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







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