Форум программистов «Весельчак У»
  *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

  • Рекомендуем проверить настройки временной зоны в вашем профиле (страница "Внешний вид форума", пункт "Часовой пояс:").
  • У нас больше нет рассылок. Если вам приходят письма от наших бывших рассылок mail.ru и subscribe.ru, то знайте, что это не мы рассылаем.
   Начало  
Наши сайты
Помощь Поиск Календарь Почта Войти Регистрация  
Страниц: [1] 2 3 4 ... 10
 1 
 : 11-11-2018 22:15 
Автор AlexLaw - Последний ответ от Джон
Не совсем понятно, что нужно разбирать, если он уже написан (и даже работает!)?
Я имел ввиду переписать этот код на Делфи

А зачем?  А черт его знает... Вы думаете скомпилированный код Турбо-Паскаля будет работать эффективней чем С/С++?

 2 
 : 11-11-2018 17:03 
Автор AlexLaw - Последний ответ от RXL
На мой взгляд переписать с C++ на Delphi — чисто механическая работа, эти языки на 99% повторяют друг друга.

 3 
 : 11-11-2018 16:38 
Автор AlexLaw - Последний ответ от Алексей++
AlexLaw, код очень дикий, куча глобальных переменных и магических констант. Я не знаю, что именно тебе в экспорте показать. Если просто все функции, то толку мало, ты не сможешь использовать и модифицировать

могу для начала экспортировать
Код:
int call_main(int argc, char **argv)

- попробуй вызывать с нужными параметрами и смотреть результат в консоли. Приложение, использующее dll, должно быть, я так понимаю, консольное, чтобы видеть вывод



Добавлено через 2 минуты и 11 секунд:
результат работы падает где-то в глобальном массиве
Код:
unsigned char brd[0xBC+2*0xEF+1],      /* contains play bord and 2 delta boards  */
(это не экспортировал)

 4 
 : 11-11-2018 16:05 
Автор AlexLaw - Последний ответ от Алексей++
AlexLaw, если честно - с DLL дел не имею, разбираться лень. Щас гляну, но если с ходу не получится, то увы

 5 
 : 11-11-2018 15:52 
Автор AlexLaw - Последний ответ от AlexLaw
AlexLaw, алгоритм - это не язык программирования, это последовательность действий
Это понятно.
Можете собрать dll? На вход - Fen поз, на вых список ходов.

 6 
 : 11-11-2018 15:47 
Автор AlexLaw - Последний ответ от Алексей++
AlexLaw, алгоритм - это не язык программирования, это последовательность действий

например
Код:
//N-номер хода. Глубина - 10 ходов

//"доска" - содержит текущую ситуацию на доске (и ход, приведший к рождению доски)
//"(стек N)" - содержит стартовые доски N-го хода
//"<<" - операция добавления доски в стек
int N=0
инициализируем (стек N)<<(доска) // только что расставили фигуры

for(N=N+1; N<=10; N++)
{
if( (стек N-1) существует )
{
вытаскиваем из (стека N-1) очередную доску Д1

for(шагаем по всем фигурам доски Д1)
{
for(перебираем возможные шаги текущей фигуры Ф1 доски Д1)
{
доска Д2 = Д1 + (шаг фигуры Ф1 со всеми результатами шага)
(стек N)<<Д2
}
}
}
}

результат работы - список стеков 0,1,...,10

 7 
 : 11-11-2018 15:45 
Автор AlexLaw - Последний ответ от AlexLaw
Не совсем понятно, что нужно разбирать, если он уже написан (и даже работает!)?
Я имел ввиду переписать этот код на Делфи или создать dll на его основе.
Использовать такой же подход (алгоритм)

 8 
 : 11-11-2018 15:36 
Автор AlexLaw - Последний ответ от Джон
Не совсем понятно, что нужно разбирать, если он уже написан (и даже работает!)?

если мне будет чтото непонятно помочь советом
а вот это всегда пожалуйста.

 9 
 : 10-11-2018 10:33 
Автор AlexLaw - Последний ответ от AlexLaw
Исправил некоторые ошибки, но не все.
Буду признателен, если кто-нибудь укажет не корректный ход.
Для этого прогу сделал с уклоном на отладку.
Сравнивать с эталонной супер прогой https://zipproth.de/jetchess/index.html
или https://www.chessprogramming.org/Perft_Results
Скорее всего взятие на проходе.


Добавлено через 13 часов, 39 минут и 53 секунды:
Я так понял, что тут на форуме много знающих C и C++.
Может быть совместно разберем алгоритм написанный на Си и реализуем его на Делфи.
Нашел на одном из форумов код на Си.
Скомпилировал, вот что получилось

Как видно работает быстро.
Может совместно  разберем алгоритм и напишем на Делфи.
Или соберем dll.
PS
в крайнем случае, если мне будет чтото непонятно помочь советом


 10 
 : 10-11-2018 05:03 
Автор ovdeeva89 - Последний ответ от Алексей++
ovdeeva89, на бесполезные вопросы - бесполезные ответы. Приятного изучения ответов Улыбаюсь

Страниц: [1] 2 3 4 ... 10
Powered by SMF 1.1.21 | SMF © 2015, Simple Machines