Школа: ГБОУ Имени маршала на Юго-Востоке
(классы “Силаэдр”)
Быки и коровы
Сенин Георгий.
Научный руководитель:
Москва 2017
Оглавление
Введение…………………………………………………………………………………………………………………………………………….....3
Материалы и методы………………………………………………………………………………………………………………….…….....3
Результаты……………………………………………………………………………………………………………………………………………..4
Анализ полученных результатов………………………………………………………………………………..………………………..5
Выводы………………………………………………………………………..…………………………………………………………………………5
Перспективы………………………………………………………………………………….………………………………………………………6
Дополнение…………….…………………………………………………………………………………….………………………………………6
Список литературы…………………………………………………………………………………………..……………………………………6
Введение
Правила игры “Быки и коровы”: Играют два или более игроков. Один загадывает слово, другой (другие) пытается отгадать. Если в загаданном слове и в предложенном есть одинаковая буква на одинаковых местах, то это бык. Если в словах будут одинаковые буквы, но они встречаются на разных местах, то это корова. Например: загаданное – аист, а предложенное – сорт. 1 бык, 1 корова.
Цель: Написать программу, которая отгадывает слова в автоматическом режиме по правилам игры «Быки и Коровы» и исследовать характеристики программы: будет ли она отгадывать быстрее человека.
Задачи: 1) Придумать алгоритм
2) Реализовать программу
3) Реализовать интерфейс
4) Исследовать распределение длин игр для разного количества букв
Материалы и методы
Инструменты: Я использовали язык программирования , а также словари английских и русских языков в текстовых файлах. Для реализации интерфейса был использован Windows Forms.
Результаты
Алгоритм:
Вкратце идея алгоритма такова: программа располагает большим словарем, а потом удаляет слова из словаря по введенным пользователем данным и выводит любое слово из отсортированного словаря.

Программа
Была написана программа, которая играет с пользователем и в автоматическом режиме отгадывает слово на английском или русском языке из 3-9 букв, загаданное пользователем по правилам игры «Быки и коровы».

Анализ полученных данных
Программа угадывает слово из четырех букв чаще всего за 8 попыток, вот распределение длин игр для слов из 4 и 5 букв:


Выводы
Когда я играл с другими людьми, они отгадывали чаще всего за 5-7 попыток. Однако программа чаще отгадывает слова за 8-9 попыток, но при этом есть случаи, когда количество попыток больше 15. Я думаю, это происходит из-за того что встречаются похожие по конструкции слова (например, если 4 буквы, то это: буква “о”на втором месте и буква ”а” на четвертом)
Перспективы
В планах реализовать интерфейс на Windows Forms для более удобной игры. Доработать алгоритм так, чтобы не предлагались похожие слова.Благодарность: автор благодарит Нечаева Николая Михайловича за помощь с Windows Forms.
Литература:
[1] А. Беллос «Красота в квадрате». М:2015.


