Жак Арсак - Программирование игр и головоломок

Здесь есть возможность читать онлайн «Жак Арсак - Программирование игр и головоломок» весь текст электронной книги совершенно бесплатно (целиком полную версию без сокращений). В некоторых случаях можно слушать аудио, скачать через торрент в формате fb2 и присутствует краткое содержание. Город: Москва, Год выпуска: 1990, ISBN: 1990, Издательство: Наука. Гл. ред. физ.-мат. лит., Жанр: Программирование, на русском языке. Описание произведения, (предисловие) а так же отзывы посетителей доступны на портале библиотеки ЛибКат.

Программирование игр и головоломок: краткое содержание, описание и аннотация

Предлагаем к чтению аннотацию, описание, краткое содержание или предисловие (зависит от того, что написал сам автор книги «Программирование игр и головоломок»). Если вы не нашли необходимую информацию о книге — напишите в комментариях, мы постараемся отыскать её.

Рассматриваются способы программирования различных занимательных игр и головоломок с числами, геометрическими фигурами и др. Изложение большинства игр и головоломок ведется в несколько этапов. Сначала разъясняется сама постановка задачи и требования, предъявляемые к алгоритму ее решения.
В следующем разделе книги обсуждается сам алгоритм и возможные пути его реализации.
В конце книга по многим играм и головоломкам даются наброски их программной реализации. Используемый при этом язык типа Паскаля допускает перевод на другие широко распространенные языки программирования.
Для начинающих программистов, студентов вузов и техникумов.

Программирование игр и головоломок — читать онлайн бесплатно полную книгу (весь текст) целиком

Ниже представлен текст книги, разбитый по страницам. Система сохранения места последней прочитанной страницы, позволяет с удобством читать онлайн бесплатно книгу «Программирование игр и головоломок», без необходимости каждый раз заново искать на чём Вы остановились. Поставьте закладку, и сможете в любой момент перейти на страницу, на которой закончили чтение.

Тёмная тема
Сбросить

Интервал:

Закладка:

Сделать

Напомним даже саму игру на тот очень мало правдоподобный случай, если вы ее еще не знаете. Это игра для двоих, и компьютер будет вашим партнером. На столе — кучи спичек в некотором количестве, и в каждой куче — некоторое количество спичек. Например, есть 5 кучек с 8, 13, 7, 5, 9 спичками.

Каждый игрок на своем ходе берет столько спичек, сколько хочет, из одной кучки, но он обязан взять хотя бы одну. Выигрывает тот, кто берет последнюю спичку. Вот партия, сыгранная от начала до конца. Компьютер начинает.

Исходное положение: 8, 13, 7, 5, 9

Ход компьютера Ваш ход
б, 13, 7, 5, 9 6, 3, 7, 5, 9
б, 3, 7, 5, 7 2, 3, 7, 5, 7
2, 3, 7, 1, 7 2, 0, 7, 1, 7
2, 0, 4, 1, 7 2, 0, 3, 1, 7
2, 0, 3, 1, 0 2, 0, 2, 1, 0
2, 0, 2, 0, 0

Вы проиграли. Если вы возьмете две спички из одной кучки, то компьютер возьмет две из другой, так что и последнюю и потому выиграет. Если же вы возьмете одну спичку из одной кучки, то он возьмет одну из другой, и вы проигрываете на следующем ходе.

Мариенбадская игра является простым вариантом этой: проигрывает тот, кто берет последнюю спичку…

Этот род игр можно решительно осудить. Это — совершенно несправедливая игра. Выигрывающая стратегия существует. Если ваш противник ее не знает (как было в приведенном выше примере), то он обязательно проигрывает. Если же он ее знает, то он первый воспользуется усвоенной им выигрывающей стратегией, и вы ничего не сможете сделать. С другой стороны, даже если вы знаете выигрывающую стратегию, вы рискуете проиграть компьютеру, потому что вы не так хорошо считаете…

?** Игра 20.Игра Норткотта.

Вот менее известная игра, которую, однако, гораздо труднее программировать. Эта игра разыгрывается двумя участниками на прямоугольной площадке, разделенной на поля, как показано на рис. 12.

Каждый игрок располагает по шашке на каждой стропе В начале черные шашки - фото 10

Каждый игрок располагает по шашке на каждой стропе, В начале черные шашки находятся на левых полях, белые — на правых. При каждом ходе игрок перемещает одну из своих шашек направо или налево на столько полей, сколько он хочет; но он не может переходить край игрового поля, и не может переходить за клетку, предшествующую противоположной шашке; шашки друг друга не берут и нельзя переходить занятое поле. Проигрывает тот, кто не может пошевелиться, потому что все его шашки загнаны между краем и противоположными шашками.

Размер игры значит очень мало. Я предпочитаю игру с тремя строками, но 4 и 5 — тоже очень хорошие числа. Длина строк несущественна. Выберите ее так, чтобы игра хорошо смотрелась.

На экране вы можете воспользоваться техникой, которая нам так часто служила. Пусть свободные клетки будут представлены точками, шашки одного из игроков — звездочками, а другого — 0. На рис. 13 воспроизведено начальное положение (4 строки, 9 полей на строке). Ход компьютера состоит просто в перемещении одной из его шашек (внимание: если ответ будет слишком быстрым, его, может статься, будет трудно воспринимать. Подумайте, как использовать цикл ожидания). Ход игрока может быть дан компьютеру в вг-де указания, на какой строке нужно переставить шашку и число полей при перемещении; положительное число указывает на приближение к противнику, отрицательное число означает отход к краю игрового поля. Все это очень просто,

?* Игра 21.Игра Кейлеса.

В наиболее простой форме эта игра разыгрывается со спичками, положенными в один ряд. Каждый игрок на своем ходе вынимает либо какую-то одну спичку из строки, либо две смежные спички. Это может разломать исходный ряд на несколько меньших рядов. Вот, например, начальная конфигурация (спички обозначены нулями), а затем — состояние игры через несколько ходов (точки обозначают места, оставшиеся пустыми).

Вначале:

0000000000000

После нескольких ходов;

.000..00.0000..

Выигрывает тот, кто берет последнюю спичку.

Игру можно легко распространить на случай нескольких исходных линий спичек. На каждом ходе игрок берет либо одну спичку, либо две соседние спички на линии, которую он выбрал.

Как и в предыдущих играх, подумайте о применении цикла, ожидания, чтобы у вас было время увидеть ответ компьютера. Как и в играх Нима и Норткотта, эта игра не очень-то справедлива. Компьютер выигрывает все партии, до крайней мере, если его противник не знает выигрывающей стратегии…

* Игра 22.Игра Сима.

Еще одна игра, тоже совершенно не равноправная для двух игроков — для компьютера и для вас.

Читать дальше
Тёмная тема
Сбросить

Интервал:

Закладка:

Сделать

Похожие книги на «Программирование игр и головоломок»

Представляем Вашему вниманию похожие книги на «Программирование игр и головоломок» списком для выбора. Мы отобрали схожую по названию и смыслу литературу в надежде предоставить читателям больше вариантов отыскать новые, интересные, ещё непрочитанные произведения.


Отзывы о книге «Программирование игр и головоломок»

Обсуждение, отзывы о книге «Программирование игр и головоломок» и просто собственные мнения читателей. Оставьте ваши комментарии, напишите, что Вы думаете о произведении, его смысле или главных героях. Укажите что конкретно понравилось, а что нет, и почему Вы так считаете.

x