Напишите программу на Python, реализующую игру «Спички».
В игре «Спички» участвует два игрока и N спичек. Игроки по очереди берут от одной до M спичек, где M = 3. Тот игрок, который возьмёт последнюю спичку, считается проигравшим.
Программа будет играть за первого игрока, а пользователь — за второго. Программа должна спросить у пользователя количество спичек N и сыграть за первого игрока, спрашивая у пользователя его ходы.
Пример работы программы:
C:\>Python33\python.exe matches.py Введите количество спичек (N): 10 Ход № 1. Компьютер берёт 3 спички. Осталось 7 спичек. Введите сколько спичек возьмёте вы: 2 Ход № 2. Вы взяли 2 спички. Осталось 5 спичек. Ход № 3. Компьютер берёт 1 спичку. Осталось 4 спички. Введите сколько спичек возьмёте вы: 1 Ход № 4. Вы взяли 1 спичку. Осталось 3 спичек. Ход № 5. Компьютер берёт 2 спички. Осталась 1 спичка. Введите сколько спичек возьмёте вы: 1 Ход № 6. Вы взяли 1 спичку. Осталось 0 спичек. Компьютер выйграл!
Необходимо обрабатывать случаи, когда пользователь вводит некорректные значения (например, текст вместо числа, или пользователь пытается взять больше чем можно спичек) и переспрашивать пользователя.
При прерывании пользователем программы (с помощью Ctrl+C), необходимо вывести сообщение о выходе и выйти.
Дополнительные задания:
- Выводите информацию о количестве спичек в правильном склонении: «1 спичка», «2, 3, 42 спички», «5, 14 спичек».
- Обобщите игру для произвольного M (M ≥ 2).
Напишите программу, которая будет подсчитывать сколько раз подстрока (слово) встречается в файле.
Программа должна спросить пользователя имя файла F, с котором нужно работать. Далее, программа спрашивает строку для поиска S (слово), и выводит сколько раз строка S встречается в файле F.
Спрашивать строку для поиска необходимо в цикле, пока введённая строка не окажется пустой, или не будет запрошено завершение программы (нажатие Ctrl+C).
Например:
C:\>Python33\python.exe stat.py Введите имя файла: crime_and_punishment.txt Введите строку для поиска: она Строка 'она' встречается 803 раз. Введите строку для поиска: он Строка 'он' встречается 5499 раз. Введите строку для поиска: ·она· Строка ' она ' встречается 568 раз. Введите строку для поиска: ·он· Строка ' он ' встречается 1817 раз.
Программа должна обрабатывать случай, если файл не удаётся открыть или прочитать, выводить сообщение об ошибке и выходить.
Дополнительные задания:
Выводите информацию о количестве в правильном склонении: «1 раз», «2, 3, 42 раза», «5, 14 раз».
Реализуйте работу в неинтерактивном режиме через аргументы командной строки, передаваемые программе:
C:\>Python33\python.exe stat.py crime_and_punishment.txt она он Введите строку для поиска: она Строка 'она' встречается 803 раз. Введите строку для поиска: он C:\>Выводите справку о работе в неинтерактивном режиме, если аргументы не переданы:
C:\>Python33\python.exe stat.py Usage: stat.py FILE STR1 [STR2 ...] C:\>Напишите программу для подсчета самых часто встречаемых слов в файле.