|
0 / 0 / 0
Регистрация: 07.01.2013
Сообщений: 32
|
||||||
Добавить размеры в код "Обход конем"15.01.2013, 23:27. Показов 3922. Ответов 43
Метки нет (Все метки)
Господа,решила в новой теме попросить помощи.есть код
-размеры шахматной доски. -координаты конечного поля. как это воплотить в жизнь? Спасибо.
0
|
||||||
| 15.01.2013, 23:27 | |
|
Ответы с готовыми решениями:
43
Обход конем Обход конём Обход доски конем |
|
4903 / 2696 / 921
Регистрация: 29.11.2010
Сообщений: 5,783
|
||||||
| 23.01.2013, 23:56 | ||||||
|
Я тут вот чего придумал. Поскольку исходная точка одна, задача сводится к помеси алгоритма Дейкстры с волновым алгоритмом. Надо просто заполнить все возможные минимальные варианты хода коня по всем возможным клеткам, начиная с исходной. Т.е. не надо ни сложных матриц смежности, ни структур типа стек.
Простейшая реализация через рекурсию.
1
|
||||||
| 24.01.2013, 02:24 | ||||||
|
вот вариант с одномерным массивом
1
|
||||||
|
0 / 0 / 0
Регистрация: 07.01.2013
Сообщений: 32
|
|
| 24.01.2013, 03:19 [ТС] | |
|
lemegeton, вы чудесны,код просто идеально подходит))
он все не отстанет с загрузкой размеров и координатов..можно ли с помощью printf использовать height,wigth,координаты y и x для загрузки? Добавлено через 44 секунды UserAK, спасибо и Вам,к сожалению,препод поставил строгий запрет на С++... Добавлено через 15 минут попросил загрузить с помощью scanf Добавлено через 12 минут ..эээ..через printf понятно,как это сделать,а тут..или совместно с printf делать и scanf,чтобы он просил вводить данные?уфф..помогите последний раз,я отвяжусь,любезный lemegeton?
0
|
|
| 24.01.2013, 08:24 | |||||||||||
|
вот через printf() и scanf()
без ссылок и new delete
если использовать макросы, то получается так:
0
|
|||||||||||
|
4903 / 2696 / 921
Регистрация: 29.11.2010
Сообщений: 5,783
|
|||||||
| 24.01.2013, 08:25 | |||||||
|
Вот пример ввода. Сделайте по аналогии. Обратите внимание на амперсанд перед width в scanf'е. Он очень важен.
1
|
|||||||
|
4903 / 2696 / 921
Регистрация: 29.11.2010
Сообщений: 5,783
|
||
| 24.01.2013, 08:45 | ||
|
Падает, если нет пути до точки, попробуйте поле размером 3х3. Не по теме: Конечно, решение через стек более универсально, чем через рекурсию, но его сложнее понять.
1
|
||
| 24.01.2013, 09:12 | ||||||
|
вот теперь не падает и пишет если нет пути, спасибо )
просто я это написал, чтобы показать как заменить шаблонный stack<int> массивом, обойтись без рекурсии и заодно использовать одномерный массив вместо матрицы. вроде получилось, ми доволен
2
|
||||||
|
4903 / 2696 / 921
Регистрация: 29.11.2010
Сообщений: 5,783
|
||
| 24.01.2013, 09:18 | ||
|
Еще надо бы от глобальных переменных отказаться.
1
|
||
| 24.01.2013, 09:31 | |
что верно, то верноэто всё ради того, что бы было как можно меньше параметров всяких у функций вот даже макросов налепилДобавлено через 2 минуты сначала сделал с рекурсией, но ввёл что-то вроде 100х100 и стэк лопнул. тогда вот и решил извратиться ![]() Добавлено через 2 минуты и решил не таскать туда-сюда эту несчастную матрицу из функции в функцию, сделал глобальной, да и всё остальное заодно уж
0
|
|
|
0 / 0 / 0
Регистрация: 07.01.2013
Сообщений: 32
|
||
| 24.01.2013, 18:00 [ТС] | ||
|
Добавлено через 2 минуты а каждый раз int писать по идее не нужно,ведь есть строка,которая относит все величины к типу int
0
|
||
|
4903 / 2696 / 921
Регистрация: 29.11.2010
Сообщений: 5,783
|
||||||||||||
| 24.01.2013, 19:27 | ||||||||||||
|
Вообще, я бы на вашем месте сделал функцию вроде такой:
1
|
||||||||||||
|
0 / 0 / 0
Регистрация: 07.01.2013
Сообщений: 32
|
||||||
| 25.01.2013, 00:19 [ТС] | ||||||
|
Премногоуважаемый lemegeton, послала ему вот это
Добавлено через 44 секунды код вставила Ваш..чтобы инициализировал переменные с помощью scanf.или я даже это неправильно сделала?..
0
|
||||||
|
4903 / 2696 / 921
Регистрация: 29.11.2010
Сообщений: 5,783
|
||||||||
| 25.01.2013, 00:52 | ||||||||
|
Ыыы... Оно компилируется.
0
|
||||||||
|
Форумчанин
8216 / 5047 / 1437
Регистрация: 29.11.2010
Сообщений: 13,453
|
||
| 25.01.2013, 01:04 | ||
|
0
|
||
|
0 / 0 / 0
Регистрация: 24.01.2013
Сообщений: 49
|
|
| 25.01.2013, 01:12 | |
|
lemegeton, не поверите,специальность совсем не связана с программированием,но предмет обязательный.мало того,еще в следующем семестре будет С++.Так что готовьтесь,я скоро буду )))
факультет ядерной физики,специальность связана с радиацией.лол,да?казалось бы,к чему оно нужно.
0
|
|
|
0 / 0 / 0
Регистрация: 07.01.2013
Сообщений: 32
|
|
| 25.01.2013, 01:16 [ТС] | |
|
прошу прощения,не вышла из аккаунта,сосед по комнате тоже на форуме этом сидит,свою задачку ищет))общажные дела.
0
|
|
|
Форумчанин
8216 / 5047 / 1437
Регистрация: 29.11.2010
Сообщений: 13,453
|
|
| 25.01.2013, 01:16 | |
|
небритый еж, затем же, зачем и программистам ядерная или квантовая физика.
Чтоб было общее развитие и мы были друг с другом на одной волне
0
|
|
|
0 / 0 / 0
Регистрация: 07.01.2013
Сообщений: 32
|
|
| 25.01.2013, 01:22 [ТС] | |
|
MrGluck, это мой пост,я пометила,что с чужого аккаунта просто написала))
ну знаете..с компьютером я разбираюсь отлично,но этого недостаточно видимо.мало того,что был на прошлом курсе паскаль,так еще в этом году всунули С и С++. То есть приеду я куда-нибудь с проверкой замерять загрязненность почвы,а если работы мало окажется,то где-то на дому смогу программку написать требующим..за небольшую плату.так чтоле.Мне физика гораздо интереснее.А программирование я просто уважаю.я с ним на Вы.
0
|
|
|
Форумчанин
8216 / 5047 / 1437
Регистрация: 29.11.2010
Сообщений: 13,453
|
|
| 25.01.2013, 02:00 | |
|
Катерька, захотите програмку какую-нибудь написать для подсчета своего маленького коллайдера - запрограммируете, знаний вам хватит как раз ровно для вычисления определенных функций без всей мощи ООП.
У меня в этом семестре были: политология, социология, БЖД, архитектура ЭВМ, обработка визуальной информации и ничего плохого я в этом не вижу. Пока дают знания - надо брать. А "кодить" можно и в шараге научиться. Процитирую своего социолога, который на первой лекции сказал очень мудрую вещь. "Давайте решим, для чего вам все это надо. Вы находитесь в высшем учебном заведении. Вас пичкают разной ерундой. Что вы получите при окончании университета. У вас будет как бы условно два нимба над головой. Один, тот, что поменьше, - это ваши знания в области программирования (специальности), второй нимб побольше говорит о том, что вы инженер и сможете свои знания перенести в любую сторону. Т.е. многосторонне развиты и сможете найти свою нишу в области работы."
0
|
|
| 25.01.2013, 02:00 | |
|
Обход доски конем Обход доски конем Обход доски конём Обход доски конем Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Remote Connection Manager
DevAlt 21.06.2026
Написал для себя небольшую прилагу:
https:/ / github. com/ altbodhi/ ReConMan
По итогу пришел к мысли, что DU не дружат с существующими технологиями.
От сериализации до отображения в реляционную. . .
|
Администрация Хабра удаляет новые энрегоэфективные алгоритмы, которые не западной школы кода, и вовсе никак не сгенерировавны.
Hrethgir 20.06.2026
Делается это, как замечено, при правках - при объявлении концептуальных отличий в алгоримах. Делается это, по линейке событий - после дополнения публикации основными отличиями от основных западных. . .
|
Процесс ориентированная диалектика (не новость - просто системное обновление, философия).
Hrethgir 20.06.2026
Однажды один участник в своём блоге, на этом форуме, сделал запись "О языках замолвите слово". Понимая, что язык - важная вещь, я решил хорошо подумать, прежде чем сказать, и сказал то, что вы видите. . .
|
Контроль уникальности строк в табличной части документа
Maks 18.06.2026
Алгоритм из решения ниже разработан на примере нетипового документа "ПланированиеСпецтехники" с табличной частью "НаличиеОборудования", разработанного в КА2.
Задача: контроль уникальности строк в. . .
|
|
Клиент
Uhbif79 18.06.2026
Здесь простой клиент для работы с сервером.
|
Сервер
Uhbif79 18.06.2026
Выкладываю простейший сервер.
|
Дефенестрация
kumehtar 18.06.2026
Узнал интересное слово. Дефенестрация. Это когда ты выбрасываешь кого-либо или что-либо из окна. Возьму на вооружение)))
|
Дихотомия добра и зла
kumehtar 18.06.2026
Как Дзен-буддисты говорят о добре и зле: не нужно воевать против зла, нужно воевать против невежества. Тогда добро станет ествественным, и поэтому вечным. Но дело в том, что невежество всё время. . .
|