powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Java [игнор отключен] [закрыт для гостей] / Определение мата в шахматах?
31 сообщений из 31, показаны все 2 страниц
Определение мата в шахматах?
    #37813332
_webdev_
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Подскажите пож как можно определить мат в шахматах? А то не могу придумать как это запрограммировать.
Дошел до того, что могу определять какие клетки под ударом, чтоб король туда не мог ходить.
Могу сделать, чтоб каждый раз проверяло не находится ли король под ударом... Это все можно, но вопрос и проблема в том, что если например король под ударом и все позиции куда он может походить тоже под ударом..
Остается такая штука как.. Противник жертвует фигурой прикрывая короля и после этого у короля например открывается свободная клетка для хода...

В общем, подскажите как кто видит как можно организовать мат для противника? Игра друг против друга, без "ИИ".

Спаасибо заранее, а то мучаюсь уже долго с этой проблемой.. :(
...
Рейтинг: 0 / 0
Определение мата в шахматах?
    #37813346
Большой Синий Кит
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
_webdev_,

Что-то я не понял.
Мат — в шахматах ситуация, когда король находится под шахом, а игрок не может сделать ни одного хода, чтобы его избежать

Не понял просто по поводу жертвы фигуры. Если противник может пожертвовать фигурой и тем самым вывести короля из-под шаха - это не мат :)
...
Рейтинг: 0 / 0
Определение мата в шахматах?
    #37813362
_webdev_
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Большой Синий КитНе понял просто по поводу жертвы фигуры. Если противник может пожертвовать фигурой и тем самым вывести короля из-под шаха - это не мат :) - да,
Я почему еще задал вопрос.. Я не знаю как заканчивать игру.. Имеется ввиду например, проиграл такой-то игрок. А Такое нельзя писать исходя только из того, что король под ударом и ему некуда походить..
...
Рейтинг: 0 / 0
Определение мата в шахматах?
    #37813367
alex_k
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
_webdev_,
решение " в лоб" перебрать все варианты ходов игрока и посмотреть, выведет ли хоть один из них короля из под удара. если такого "спасительного" хода нет ни у одной фигуры игрока(включая короля) значит игрок проиграл.
к тому же, это даст возможность отсечь запрещеные ходы игрока. тоесть:
ситуация не матовая, просто шах, но игрок обязан устранить угрозу королю. значит игроку надо запретить те ходы, которые угрозу королю оставляют.
...
Рейтинг: 0 / 0
Определение мата в шахматах?
    #37813370
alex_k
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
тоесть в общем виде - если есть угроза королю(шах), обязательно надо проверять все возможные ходы - устраняют ли они эту угрозу. если ходов устраняющих угрозу нет - все, мат.
...
Рейтинг: 0 / 0
Определение мата в шахматах?
    #37813379
_webdev_
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
alex_k - спасибо, натолкнули на мысль... При каждом ходе нужно будет проверку делать... Гррр, осталось только придумать как это сделать в своей программе. :)
...
Рейтинг: 0 / 0
Определение мата в шахматах?
    #37813395
ShSerge
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
_webdev_...Противник жертвует фигурой прикрывая короля и после этого у короля например открывается свободная клетка для хода...
Если король под ударом (шах), то никакой фигурой пожертвовать не получится.
Короче, если ходить некуда и шах, то это - мат.
...
Рейтинг: 0 / 0
Определение мата в шахматах?
    #37813424
alex_k
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ShSerge,

можно закрыть короля от угрозы. можно слопать угражающую фигуру.
...
Рейтинг: 0 / 0
Определение мата в шахматах?
    #37813528
stratilat19
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
если король под шахом, и любой ход любой фигурой все равно оставляет его под шахом
...
Рейтинг: 0 / 0
Определение мата в шахматах?
    #37813554
VFl
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
stratilat19,

любой ход любой фигурой это можно очень долго проверять. Есть 1 варианта, если король не может уйти:

1. закрытся от шаха (не получается, если шах двойной)
2. Съесть фигуру, которая делает шах (не получается, если шах двойной)

Итак, если шах двойной и король не может уйти, то это уже мат.

Если не двойной:

1. Проверить, можно ли закрыться от шаха (не получается, если шах от коня)
это значит проверить, можно ли поставить фигуру между той, которая делает шах, и королем. По линии атаки фигуры.

2. Проверить, можно ли съесть фигуру, которая объявила шах.
...
Рейтинг: 0 / 0
Определение мата в шахматах?
    #37813556
IDVsbruck
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Да ну? А перекрывающий? За это и речь. Вроде ТС определился с решением.
...
Рейтинг: 0 / 0
Определение мата в шахматах?
    #37813557
VFl
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
VFlstratilat19,

... Есть 1 варианта, если король не может уйти: ...

Есть 2 варианта, если король не может уйти
...
Рейтинг: 0 / 0
Определение мата в шахматах?
    #37813639
_webdev_
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
stratilat19если король под шахом, и любой ход любой фигурой все равно оставляет его под шахом - оч полезная инфа, илгоритм кодинга сокращается, пасиб. Вот, кажется все просто, а много мнений - оч хорошо!!!


VFlstratilat19,

любой ход любой фигурой это можно очень долго проверять. Есть 1 варианта, если король не может уйти:

1. закрытся от шаха (не получается, если шах двойной)
2. Съесть фигуру, которая делает шах (не получается, если шах двойной)

Итак, если шах двойной и король не может уйти, то это уже мат.

Если не двойной:

1. Проверить, можно ли закрыться от шаха (не получается, если шах от коня)
это значит проверить, можно ли поставить фигуру между той, которая делает шах, и королем. По линии атаки фигуры.

2. Проверить, можно ли съесть фигуру, которая объявила шах.

ТОже полезно для размышлений!!
Пасибо! Я в процессеееее. Уже определяю шах на любого из королей, определяю какая фигура ствит этот шах. Теперь нужно еще ко всему проверить не двойной ли шах...
...
Рейтинг: 0 / 0
Определение мата в шахматах?
    #37813720
Partisan M
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
вопрос не имеет никакого отношения к программированию на Java, поэтому не стоило ни задавать его здесь, ни отвечать. Однако алгоритмы, используемые в шахматных программах, описаны на сайтах соответствующей тематики, там можно узнать и как определить факт мата (само определение зависит о способа, каким представлена в программе позиция на доске. Ряд способов описан. Без его предварительного выбора обсуждение определения мата беспредметно).
...
Рейтинг: 0 / 0
Определение мата в шахматах?
    #37813724
_webdev_
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Значит так, добился пока этого, прошу поправить если что пропустил...

1. Если 2 шаха, то мат! Тоисть если король атакован двумя фигурами и ему некуда бежать.(сделал).
2. Если шах с одной фигуры и фигуру нельзя побить остается только подложить на пути атакующей фигуры другую фигуру. Правильно?
3. Если фигуру нельзя побить и на пути нельзя ничего поставить и королю некуда бежать, то мат!

Еще варианты к определению мата в дополнение? Мыслей уже много прочитал, теперь стараюсь отобразить в коде, какие еще ситуации??

Еще бы придумать как "пат" определять...

Всем спасибо!



Partisan Mвопрос не имеет никакого отношения к программированию на Java, поэтому не стоило ни задавать его здесь, ни отвечать. - да, так как раздела "Алгоритмы не нашел", решил здесь попробовать счастья....
...
Рейтинг: 0 / 0
Определение мата в шахматах?
    #37813953
sanBez
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
_webdev_Еще бы придумать как "пат" определять...

Пат это когда твоя очередь хода, а ни одной фигурой нельзя пойти
...
Рейтинг: 0 / 0
Определение мата в шахматах?
    #37813962
sanBez
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
sanBez,

Уточнение:
пат - твоя очередь хода, ни одной фигурой нельзя пойти, король не находится под шахом

Ха, альтернативное определение мата:
твоя очередь хода, ни одной фигурой нельзя пойти, король находится под шахом :)
...
Рейтинг: 0 / 0
Определение мата в шахматах?
    #37814974
Basil A. Sidorov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
sanBezХа, альтернативное... и неправильное.
...
Рейтинг: 0 / 0
Определение мата в шахматах?
    #37815017
sanBez
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Basil A. SidorovsanBezХа, альтернативное... и неправильное.
Обоснуй, что неверно
...
Рейтинг: 0 / 0
Определение мата в шахматах?
    #37815037
забыл ник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
рокировку еще надо учитывать
...
Рейтинг: 0 / 0
Определение мата в шахматах?
    #37815042
sanBez
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
забыл ник,

фи, придираемся
Рокировка кстати - это ход короля :)
...
Рейтинг: 0 / 0
Определение мата в шахматах?
    #37815055
забыл ник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
sanBezзабыл ник,

фи, придираемся
Рокировка кстати - это ход короля :)

Ну я вообще не вам конкретно говорил, а так свои 5 копеек вставил, рокировка уж очень нестандартный ход про который забывают часто
...
Рейтинг: 0 / 0
Определение мата в шахматах?
    #37815062
sanBez
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
забыл ник,

кстати, совсем забыл, если король под шахом, рокировку делать нельзя
...
Рейтинг: 0 / 0
Определение мата в шахматах?
    #37815071
забыл ник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
и правда, ну тогда определение пат - может не сработать:)
...
Рейтинг: 0 / 0
Определение мата в шахматах?
    #37815076
sanBez
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
забыл ник,

издеваемся? :) но прикольно
...
Рейтинг: 0 / 0
Определение мата в шахматах?
    #37815170
Basil A. Sidorov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
sanBezОбоснуй, что неверноВот это:sanBezтвоя очередь хода, ни одной фигурой нельзя пойти, король находится под шахом :)Если мат, то:
1. Никакой ход короля не позволяет уйти от шаха;
2. Никакой ход любой другой фигуры не закрывает короля от шаха.
...
Рейтинг: 0 / 0
Определение мата в шахматах?
    #37815238
sanBez
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Basil A. Sidorov,

не сказано что же неверно в моем определении :)
вместо него просто дано другое. Предлагаю замять эту тему.
Да и как было сказано ранее модератором, к java это не имеет никакого отношения.
...
Рейтинг: 0 / 0
Определение мата в шахматах?
    #37815467
Большой Синий Кит
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
забыл никрокировку еще надо учитывать

Может, я неправильно понял. Но рокировка запрещена, когда королю объявлен шах.
...
Рейтинг: 0 / 0
Определение мата в шахматах?
    #37815469
Большой Синий Кит
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
P.S. Уже сказали:) Прошу прощения.
...
Рейтинг: 0 / 0
Определение мата в шахматах?
    #37817501
The_ShadoW
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Столько постов написали, а человеку так ничего и не предложили, кроме полного перебора (что уныло).

Разрешение ситуации складывается из двух моментов:
1. (не относящееся к мату) В игру уже должна быть заложена невозможность сделать игроком такой ход, в результате которого его собственный король попадает под шах;
2. Чтобы проверять на мат, достаточно лишь проверить две вещи: может ли король сделать ход, не нарушающий условия п.1; или может ли ход любой другой фигуры, отвечающий требованиям п.1 закрыть короля от одной-двух фигур, угрожающих ему в результате последнего хода противника (нетрудно заметить, что их может быть две как максимум -- та, которой ходили, и та, которую открыли в результате хода).
...
Рейтинг: 0 / 0
Определение мата в шахматах?
    #37818036
_webdev_
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Всем огромнейшее спасибо.
Я целое воскресенье потратил, но пока желаемого результата не достиг..
Пока что оч устал, наверное на сл неделе продолжу штурм и определю для себя все основные моменты, может со всех мыслей сложится общая картина. :)
...
Рейтинг: 0 / 0
31 сообщений из 31, показаны все 2 страниц
Форумы / Java [игнор отключен] [закрыт для гостей] / Определение мата в шахматах?
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]