В классе провели опрос — кто в какой день недели может пойти в кино.
Есть строка с записанными в ней результатами опроса: дни недели, разделённые пробелом.
Выпишите список дней недели с указанием, сколько человек может идти в кино в этот день.
Задача понятна: по строке с днями недели (через пробел) нужно посчитать, сколько людей может идти в кино в каждый день. Выведем список дней недели в порядке понедельник → воскресенье и укажем количество.
Пошаговое решение (практический алгоритм)
1) Определить полный набор дней недели
- дни: понедельник, вторник, среда, четверг, пятница, суббота, воскресенье
2) Привести строку к удобному виду
- привести к нижнему регистру (чтобы охватить возможные варианты написания)
- разделить строку по пробелам на отдельные токены (слова)
3) Подготовить счетчик по всем дням
- создать словарь counts с ключами-днями и значениями 0
4) Обработать каждое слово из входной строки
- если слово совпадает с полным названием дня, увеличить соответствующий счетчик
- по желанию: добавить обработки аббревиатур (например, пн, вт, ср, чт, пт, сб, вс) через вспомогательный словарь-расшифровку
5) Вывести результат
- по порядку: понедельник, вторник, среда, четверг, пятница, суббота, воскресенье
- каждый день — его количество
6) Пример
- Пример входной строки:
"понедельник вторник вторник среда пятница пятница пятница"
- Расчёт:
- понедельник: 1
- вторник: 2
- среда: 1
- четверг: 0
- пятница: 3
- суббота: 0
- воскресенье: 0
- Пример вывода:
понедельник: 1
вторник: 2
среда: 1
четверг: 0
пятница: 3
суббота: 0
воскресенье: 0
7) Простейшая реализация на Python (пошаговая)
- Предположим, у вас есть переменная input_str с исходной строкой.
days = ["понедельник", "вторник", "среда", "четверг", "пятница", "суббота", "воскресенье"]
# 2) Приводим к нижнему регистру и разбиваем
tokens = input_str.lower().split()
# 3) Инициализируем счётчики
counts = {d: 0 for d in days}
# 4) Обрабатываем токены
abbreviations = {
"пн": "понедельник",
"вт": "вторник",
"ср": "среда",
"чт": "четверг",
"пт": "пятница",
"сб": "суббота",
"вс": "воскресенье",
}
for t in tokens:
if t in counts:
counts[t] += 1
elif t in abbreviations:
counts[abbreviations[t]] += 1
# иначе пропускаем неизвестные слова
# 5) Выводим поровну в нужном порядке
for d in days:
print(f"{d}: {counts[d]}")
Как работать с вашим вводом
- Если у вас есть конкретная строка результатов опроса, подставьте её в input_str и запустите код.
- Если встречаются аббревиатуры дней, можно включить словарь abbreviations как в примере.
- Если строка может содержать лишние слова или опечатки, можно дополнительно фильтровать токены или обрабатывать частичные совпадения.
Если пришлёте конкретную строку результатов опроса, могу привести готовый вывод в виде списка по каждому дню.