SWI-Prolog. Ошибка при обработке неконкретизированной переменной

Узнай цену своей работы

Формулировка задачи:

Задание: расставить в ряд разноцветные многогранники. Условие: 1.Каждая фигра окрашена в один цвет. 2.Каждый многоугольник имеет равное или большее колличество граней в сравнении с предыдущим. 3.Последовательность размещения многоугольников в ряду должна соответствовать последовательности цветов радуги. Возможен пропуск 1-3 цветов. После достижения конца радужного спектра надо вернуться в его начало и продолжить расстановку многоугольников. При этом цвета не могут повторяться. Необходимо реализовать обработку неконкретизированной переменной. (Если в главном меню ввести неконкретизированную переменную, например 'sequence_creator(O,X).' - программа должна выводить: ?- sequence_creator(O,X). O = v1, X = [v1] . ) При вводе неконкретизированной переменной выводит false. Где ошибка и как правильно реализовать данную обработку? Вот код:

Решение задачи: «SWI-Prolog. Ошибка при обработке неконкретизированной переменной»

textual
Листинг программы
sequence_creator(R1, [R1]):-
polyhedrons_db,
var(R1),
first_polyhedron(R1,R,C),
sequence_generator(R, C, [],[]).

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

5   голосов , оценка 4 из 5