| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > Центр помощи > [С++]. Игра Сима |
| Автор: shornik 16.6.2007, 08:21 |
| Помогите пожалуйста ! Есть задание: На экране компьютера выбираются 6 точек, являющихся вершинами правильного шестиугольника. Точки помечаются буквами (или цифрами). Каждый игрок при своём ходе проводит отрезок прямой, соединяющей ещё не соединённые вершины. Причём следы отрезков, проведённых различными игроками, должны быть отличны. Проигрывает тот, кто первым построит треугольник из своих собственных отрезков. Написать программу, реализующую данную игру, где один из игроков - компьютер. Уже голову поломал Заранее очень благодарен ! |
| Автор: zkv 16.6.2007, 08:56 |
сначала определись с операционной системой, компилятором. Затем реши, сам ты будешь писать, и тебе нужно что-то подсказать, или хочешь, чтобы все сделали за тебя (в этом случае ты попал не в тот раздел). |
| Автор: shornik 16.6.2007, 21:03 |
| Спасибо, что обратили внимания на мой вопрос. Буду сам писать конечно. Ось - Windows, компилятор - Visual Studio 2005. На C++(WinAPI) или C#(.NET Framework). Но не в этом вопрос. А как комп будет ходить. Не будет же он рандомом выставлять отрезки. Есть упоминание, в одной книге - Арсак Ж "Программирование игр и головоломок" 1990, про эту игру (ее логика). Смысл такой: Перед каждым ходом, комп просматривает шестиугольник и присваевает каждому отрезку значения (веса). Вес выбирается следующим образом: 0 - отрезок замыкает проигрывающий треугольник 1 - отрезок замыкает треугольник, две стороны которого принадлежат моему противнику 2 - отрезок замыкает смешанный треугольник ........... 10-отрезок соединяет две чистые вершины И затем ходит, рисуя отрезок с большим весом. Использовать дерево игры или графы ? Не могу представить саму реализацию. Как он будет выставлять веса ? |
| Автор: TimberWolf 17.6.2007, 00:19 |
| Если я правильно во всё въехал и это всегда шестиугольник, то, например, создай двумерный массив и пронумеруй определенным образом вершины, от 0 до 5 допустим. В созданном массиве перед ходом компьютера просматривай веса и ходи. В конце каждого хода пробегай все точки от начала до конца и анализируй их, допустим сами точки закрашивай цветами при постоении линий и смотри по цвету точки, относительно этого определяешь вес каждой точки оценивая данную точку относительно других и заполняй массив соответственно. Получается что у каждой точки в данный момент имеется 4 или меньше варианта хода с данной точки до другой (если только некоторые другие точки не заняты самим компьютером или игроком). |
| Автор: Earnest 17.6.2007, 17:27 |
| Для домашних заданий, курсовых, существует "Центр Помощи". Тема перенесена! |
| Автор: Вика88 1.11.2008, 20:38 |
| "[С++] Игра Сима" Задание такое: На экране компьютера выбираются не менее чем 6 точек. Точки помечаются буквами (или цифрами). Каждый игрок при своём ходе проводит отрезок прямой, соединяющей ещё не соединённые вершины. Причём следы отрезков, проведённых различными игроками, должны быть отличны. Проигрывает тот, кто первым построит треугольник из своих собственных отрезков. Смысл игры я понимаю, но так как я только недавно познакомилась с Visual Studio 2008, мне трудно реализовать хоть какой-нибудь из этапов игры. Подскажите с чего начать? |