Вопрос № 182454: Здравствуйте! Прошу помощи в следующем вопросе: Написать на С (строго) игру "пятнашки", с шансом того, выиграть нельзя и при нажатии определённой кнопки (на ваш выбор) должна высвечиваться подсказка на следующие 3 хода, а если выиграть н...
Вопрос № 182454:
Здравствуйте! Прошу помощи в следующем вопросе: Написать на С (строго) игру "пятнашки", с шансом того, выиграть нельзя и при нажатии определённой кнопки (на ваш выбор) должна высвечиваться подсказка на следующие 3 хода, а если выиграть нельзя, то соответствующее сообщение. Я написала только игру(без подсказки). Можно написать с нуля, или воспользоваться моим шаблоном, на ваше усмотрение.
Отвечает Киселёва Алёна aka Verena (Профессор) :
Здравствуйте, Наталия! Решение в приложении. В целом сделала на основе Вашей программы. Алгоритм подсказок полностью взят из проекта, размещённого на этом сайте, только изменила его под Си и выбросила лишнее. Работает так: по клавише F1 программа сама делает ход, который считает нужным, нажимать можно любое число раз, т.е. можно таким образом полностью решить задачу. Если Вам принципиально, чтобы подсказка давалась только на
три хода, можно добавить это ограничение. Отсюда я добавила отдельную функцию проверки на то, есть ли возможность найти решение при данной комбинации. Данная функция вызывается после каждого хода и выдаст сообщение, если что (хотя, полагаю, чтобы комбинация была нерешабельно
й она должна быть такой с самого начала, так что проверка несколько избыточна). Если интересно, вот тут информация к размышлению по теме, правда, к сожалению, на английском. Проверено на Visual Studio 2005 в режиме компиляции Си. Удачи!
* Стоимость одного СМС-сообщения от 7.15 руб. и зависит от оператора сотовой связи.
(полный список тарифов)
** При ошибочном вводе номера ответа или текста #thank услуга считается оказанной, денежные средства не возвращаются.
*** Сумма выплаты эксперту-автору ответа расчитывается из суммы перечислений на портал от биллинговой компании.