Я пытаюсь преобразовать строку в список ascii-кодов, например: 7 ?- string_to_list(«I’m a big blue banana in space!», C). C = [73, 39, 109, 32, 97, 32, 98, 105, 103|. ]. 8 ?- Это не дает мне весь .
7 лет, 9 месяцев назад Mossmyr
Я использую swipl. Я пытаюсь запросить файл базы данных parts.pl ниже с веб-страницы, но я не уверен, как опубликовать запрос и попросить его «запросить» базу данных и вернуть эти результаты. То, ч.
6 лет, 10 месяцев назад
Я новичок в Прологе, у меня есть этот вопрос. Из этого факта нужно получить каждый узел из этого списка узлов, как я могу это сделать? nodelist([[a,[2,3],[b,d]],[b,[5,1],[a,c,d]],[c,[3,2],[b,d]]). .
4 года, 2 месяца назад A_I
Как написать программу в swi prolog
Интерпретатор пролога SWI Prolog есть в репозитарии Debian.
Вызывается командой swipl:
Welcome to SWI-Prolog (Multi-threaded, 32 bits, Version 5.6.58)
Copyright (c) 1990-2008 University of Amsterdam.
Введение в логическое программирование. SWI Prolog. Часть 1
SWI-Prolog comes with ABSOLUTELY NO WARRANTY. This is free software,
and you are welcome to redistribute it under certain conditions.
Please visit http://www.swi-prolog.org for details.
For help, use ?- help(Topic). or ?- apropos(Word).
Выйти из интерпретатора можно, нажав Ctrl+Q (или Ctrl+C?), затем напечатав точку и нажав Enter. Появится запрос вида:
Action (h for help) ?
если нажать «e», то произойдет выход.
Загрузка программы происходит так. Допустим, в текущем каталоге лежит файл с программой, называется prog.pl. Надо запустить интерпретатор командой swipl, затем написать:
Обязательно с точкой на конце! В результате будет загружена эта программа. При нормальной загрузке, в консоли появится надпись вида:
% prog compiled 0.00 sec, 656 bytes
- Пример написания предикатов
- Предикат куба числа
- Как работать с интерпретатором пролога SWI Prolog
- Как происходит передача результатов работы функций в Prolog
- Пример вычисления квадратного корня на Прологе, методом Ньютона
Источник: webhamster.ru
Работа с графикой в Swi-Prolog
Всем привет, я снова с глупым вопросом по Swi-prolog. В чём суть — у меня есть файл, с которого я должен отталкиваться для вывода картинки на экран.
Проблема в том, что я не понимаю, как оно работает и как я могу вывести на экран даже вот эти тестовые данные. Например, если я просто открываю файл, то у меня автоматом появляется окошко с чёрным фоном. Но при этом я не могу вызвать предикаты из командной строки.
?- mkp. ERROR: Unknown procedure: kp/0 (DWIM could not correct goal)
Если я вставляю после комментария
% *** create and draw the current graphical object here ***
код, например, такой:
mkbo :- send( Display , display , new(Display,box(100,100)) ).
то при вызове файла появляется только чёрное окно без ожидаемого мною квадрата в нём, зато в консоли есть следующие ошибки:
Введение в программирование на языке Prolog. Решение варианта задачи.
ERROR: j:/grafik.pl:38:89: Syntax error: Operator priority clash Warning: j:/grafik.pl:50: Warning: Singleton variables: [CSize,Name,Size] ERROR: j:/grafik.pl:50: ERROR: Full stop in clause-body? Cannot redefine ,/2
(при это все) ссылаются на строку 50:
CSizeNew is CSize — 2,
Если я закрываю окно сразу после старта и пытаюсь вызвать предикат, например, mkp, то при попытке вызова любого теста вылезает ошибки с Syntax Error и ссылками на все строками с тестами. Может мне кто-нибудь объяснить, как я могу вывести на экран эти вот самые тестовые данные (квадрат, круг, кривая Безье итд)?
Источник: ru.stackoverflow.com