Результаты поиска по запросу "clpfd"

4 ответа

Обработка ограничений Prolog: Упаковочные квадраты

Я пытаюсь решить проблему обработки ограничений в прологе. Мне нужно упаковать 4 квадрата 5x5,4x4,3x3 и 2x2 в сетке 10x10. Они не могут пересекаться. Мои переменные выглядят так: Name: SqX(i), i=1..10, domain: 1..10Где X 5,4,3 или 2. Индекс i ...

2 ответа

Обратимое отношение длины дерева

Я пытаюсь написать обратимые отношения в "чистом" Прологе (нетis, вырезать или аналогичные вещи. Да, это домашнее задание), и я должен признать, что понятия не имею, как. Я не вижу никакого процесса, чтобы создать такую вещь. Нам даны ...

2 ответа

prolog конвертирует числа в римские цифры

меня есть этот код, который преобразует целые числа в римские цифры. Мне нужно добавить функцию, которая сравнивает целое число с вводом римских цифр и показывает, является ли оно try или false, например: roman (v, 5). правд toroman(0). ...

ТОП публикаций

6 ответов

Расписание матчей по теннису

Есть ограниченное количество игроков и ограниченное количество теннисных кортов. В каждом раунде может быть не больше, чем количество матчей. Никто не играет 2 раунда без перерыва. Все играют матч против всех остальных. Составьте расписание, ...

4 ответа

Обратимые численные расчеты в Прологе

При чтении SICP я наткнулся на главу 4.4 по логическому программированию. Затем я начал изучать язык программирования Prolog и попытался понять несколько простых заданий в Prolog. Я обнаружил, что у Пролога проблемы с числовыми вычислениями. ...

1 ответ

Можно ли объявить возрастающий список?

Я могу составить списки по возрастанию целых чисел следующим образом: ?- findall(L,between(1,5,L),List). Я знаю, что могу также генерировать значения, используя: ?- length(_,X). Но я не думаю, что смогу использовать это в findall, например, ...

2 ответа

PROLOG Печатать числа, которые заканчиваются на 7, а сумма его цифр больше 100

Мне нужно создать предикат, который получает числовой список и печатать только те числа, которые заканчиваются на 7 и сумма его цифр превышает 100 Я сделал предикаты для разделенных, но мне нужна помощь в объединении двух предикатов, я имею в ...

3 ответа

Пролог - Аргументы недостаточно проработаны

Я пишу небольшую программу, которая подсчитывает, сколько элементов в списке не являются числами. Вот мой код: not_number([],0). not_number([X|T],R):- not(number(X)), R1 is R+1, not_number(T,R1). not_number([_|Tail],Result):- ...

5 ответов

Простая прологическая программа. Получение ошибки:> / 2: аргументы недостаточно проработаны

Я сделал предикат ПрологаposAt(List1,P,List2) проверяет, находится ли элемент в позицииP ofList1 а такжеList2 равны posAt([X|Z], 1, [Y|W]) :- X = Y. posAt([Z|X], K, [W|Y]) :- K > 1, Kr is K - 1, posAt(X, Kr, Y). При тестировании: ?- ...

6 ответов

Быстрая реализация вербальной арифметики в Прологе

Я уже сделал рабочий обобщенный вербальная арифметика [http://en.wikipedia.org/wiki/Verbal_arithmetic] решатель в Прологе, но это слишком медленно. Чтобы запустить простое выражение S E N D + M O R E = M O N E Y, требуется 8 минут. Может ...