Форум программистов, компьютерный форум, киберфорум
Pascal (Паскаль)
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 5.00/30: Рейтинг темы: голосов - 30, средняя оценка - 5.00
0 / 0 / 0
Регистрация: 15.10.2010
Сообщений: 4

ход конем.

15.10.2010, 14:56. Показов 5667. Ответов 4
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Дано координаты двух полей шахматной доски, на которых стоят конь и пешка. Найти минимальное число ходов, за которые конь доберется до пешки, если последний стоит на месте. Координаты коня и пешки задаются как натуральные числа, от левого нижнего угла шахматной доски.
Вы, наверное, знаете, что конь в шахматах всегда перемещается или на три ячейки по горизонтали и две по вертикали, или на три ячейки по вертикали и две по горизонтали.
Формат входных данных. С клавиатуры вводится имя текстового файла (например input.txt). Первая лента этого файла содержит пару натуральных чисел, координаты коня, а вторая - координаты пешку.
Техническое задание: На экран вывести одно число - количество ходов коня. (За это можно получить до 30 баллов) в следующую ленту последовательные координаты одного из маршрутов движения лошади

Добавлено через 16 минут
ааауууу подскажите плис!!!!!!!!!!!

Добавлено через 27 секунд
аааааууууууууу
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
15.10.2010, 14:56
Ответы с готовыми решениями:

Нужна идея алгоритма! Ход конём
Помогите с алгоритмом. Пользователь задаёт размеры поля Н*М. Шахматный конь находится в левом верхнем углу. Программа должна выдать, какое...

Обход конем шахматной доски
Шахматный конь находится в левом верхнем углу шахматной доски размером NxM клеток. Составить алгоритм поиска маршрута коня, который...

Алгоритм волны. Проход конем шахматной доски.
Есть небольшая проблемка в программе - выводит неправильно шоги коня, нарисовано все правильно - а вот выводит неверно...не могу...

4
2923 / 844 / 324
Регистрация: 30.04.2009
Сообщений: 2,633
15.10.2010, 15:01
Цитата Сообщение от bestXprogramer Посмотреть сообщение
аааааууууууууу
Заблудились что ли??? ну посмотрят вашу задачу и если у кого-нибудь будет идея или возможность решить то решат или подскажут
0
2923 / 844 / 324
Регистрация: 30.04.2009
Сообщений: 2,633
15.10.2010, 15:01
Цитата Сообщение от bestXprogramer Посмотреть сообщение
аааааууууууууу
Заблудились что ли??? ну посмотрят вашу задачу и если у кого-нибудь будет идея или возможность решить то решат или подскажут
0
Почетный модератор
 Аватар для Puporev
64315 / 47611 / 32743
Регистрация: 18.05.2008
Сообщений: 115,167
15.10.2010, 15:07
Цитата Сообщение от bestXprogramer Посмотреть сообщение
если последний стоит на месте.
Что у тебя стоит?

Добавлено через 1 минуту
Цитата Сообщение от bestXprogramer Посмотреть сообщение
(За это можно получить до 30 баллов)
Задачи с конкурсов и олимпиад принципиально не решаем, это нужно самому делать или не делать совсем.
0
2 / 2 / 1
Регистрация: 11.11.2010
Сообщений: 58
19.11.2010, 04:26
я за такое задание могу получить только 2 бала из 60)))

Добавлено через 1 минуту
может тебе поможет
Решение задачи. Конь и пешка. Минимальное количество ходов:

Заполним всю доску кодом 255 (чтоб не путаться). От начальной позиции (присвоим этой клетке на доске значение 0) во все возможные позиции, на которые конь может переместиться за один ход, ставим 1. Затем сканируем всю доску, как только нашли значение 1 во все возможные клетки, куда конь может сходить ставим 2, но это только в том случае, если там стоит 255, т.е. конь там еще не был, иначе получится не кратчайший маршрут. Повторяем сканирование для 2, 3 и т.д. до тех пор, пока в одной из свежезаполненных клеток не напоремся на пешку. Если это произошло, то выводим значение из этой клетки - кратчайшее расстояние до позиции коня.
Теперь перейдем ко второму вопросу (можно, значит нужно). Заведем массив для хранения координат коня размерностью 64 (а вдруг долго топтаться будет). Вот теперь-то нам и пригодится рекурсия (хорошо, что я свою процедуру закомментировал, а не стер!). От конечной позиции (где стоит пешка) проверяем все возможные клетки, откуда туда мог прийти конь (на 1 меньше чем кол-во ходов итоговое). Как только найдем, занесем в элемент массива с номером, равным итоговому количеству ходов коня его координаты, затем уменьшаем счетчик, изначально равный количеству ходов коня до пешки, на 1. Запускаем рекурсивную процедуру для позиции, откуда пришел конь и т.д. В конце (когда дойдем до клеточки со значением 1 - первый ход) выводим все содержимое массива. Для примера из условия это: 5,5 7,6 6,4.
Я конечно понимаю, что рекурсия - вещь неудобоваримая, но лично я ее освоил еще в 8-ом классе, и даже написал научную работу на эту тему. Если что-то непонятно - пишите на мыло, буду пытаться объяснить
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
19.11.2010, 04:26
Помогаю со студенческими работами здесь

Шахматным конем обойти всю доску, побывав на каждом поле всего один раз
Составить программу, в соответствии с которой шахматный конь обойдет всю доску, побывав на каждом поле всего один раз. Делимся...

Задача про ход коня
Как известно, в шахматах горизонтальные строки обозначаются цифрами от 1 до 8, считая от расположения белых фигур, стоящих внизу доски, а...

Вывести количество последовательностей, составленных ходом "конем"
Ход конем. Шахматная ассоциация решила оснастить всех своих сотрудников такими телефонными номерами, которые бы набирались на кнопочном...

Может ли шахматный ферзь за один ход перейти с клетки в клетку
Заданы координаты клетки шахматной доски (х; у) - целые числа. Выяснить, может ли шахматный ферзь за один ход перейти с этой клетки в...

За один ход любое одно из чисел уменьшить на любой степень двойки
Своя игра Петя и Маша, ходят по очереди, играют в такую математическую игру: Задано несколько натуральных чисел. За один ход...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Новые блоги и статьи
Вывод данных через динамический список в справочнике
Maks 01.04.2026
Реализация из решения ниже выполнена на примере нетипового справочника "Спецтехника" разработанного в конфигурации КА2. Задача: вывести данные из ТЧ нетипового документа. . .
Функция заполнения текстового поля в реквизите формы документа
Maks 01.04.2026
Алгоритм из решения ниже реализован на нетиповом документе "ВыдачаОборудованияНаСпецтехнику" разработанного в конфигурации КА2, в дополнении к предыдущему решению. На форме документа создается. . .
К слову об оптимизации
kumehtar 01.04.2026
Вспоминаю начало 2000-х, университет, когда я писал на Delphi. Тогда среди программистов на форумах активно обсуждали аккуратную работу с памятью: нужно было следить за переменными, вовремя. . .
Идея фильтра интернета (сервер = слой+фильтр).
Hrethgir 31.03.2026
Суть идеи заключается в том, чтобы запустить свой сервер, о чём я если честно мечтал давно и давно приобрёл книгу как это сделать. Но не было причин его запускать. Очумелые учёные напечатали на. . .
Модель здравосоХранения 6. ESG-повестка и устойчивое развитие; углублённый анализ кадрового бренда
anaschu 31.03.2026
В прикрепленном документе раздумья о том, как можно поменять модель в будущем
10 пpимет, которые всегда сбываются
Maks 31.03.2026
1. Чтобы, наконец, пришла маршрутка, надо закурить. Если сигарета последняя, маршрутка придет еще до второй затяжки даже вопреки расписанию. 2. Нaдоели зима и снег? Не надо переезжать. Достаточно. . .
Перемещение выделенных строк ТЧ из одного документа в другой
Maks 31.03.2026
Реализация из решения ниже выполнена на примере нетипового документа "ВыдачаОборудованияНаСпецтехнику" с единственной табличной частью "ОборудованиеИКомплектующие" разработанного в конфигурации КА2. . . .
Functional First Web Framework Suave
DevAlt 30.03.2026
Sauve. IO Апнулись до NET10. Из зависимостей один пакет, работает одинаково хорошо как в режиме проекта так и в интерактивном режиме. из сложностей - чисто функциональный подход. Решил. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru