![]() |
|
![]() ![]() ![]() |
|
dodikk |
|
|||
Новичок Профиль Группа: Участник Сообщений: 8 Регистрация: 9.10.2008 Репутация: нет Всего: нет |
Подскажите пожалуйста, как правильно ввести символьную строку из консоли в SWI Prolog программу.
В мануале нашел предикат read/1, коим и пытался воспользоваться. Он все прекрасно вводит, но не в виде строк, а в виде двоичного дампа. Нашел в мануале следующее :
Попробовал оба способа. Во втором случае на консоль выводятся красивые строки, но я никак не могу заставить их работать со своими предикатами. В первом случае на экран продолжает выводиться всякая фигня, а не строки. Предикаты описаны следующим образом : bordersOn('Country1', 'Country2'). Спасибо. |
|||
|
||||
dodikk |
|
||||||||
Новичок Профиль Группа: Участник Сообщений: 8 Регистрация: 9.10.2008 Репутация: нет Всего: нет |
Помоги себе сам получается.
Сломал себе половину мозга, пока нашел, в чем дело. На самом деле после установки флагов :
Пролог в строку ничего не конвертирует. Просто предикат write/1 и прочие предикаты вывода "угадывают", что там строка и выводят ее красиво. То есть, кроме установки флагов следовало еще изменить способ хранения предикатов. Описывать их следует следующим образом :
Именно с двойными кавычками. При вводе из консоли с помощью read/1, следует вводить строки, используя обратные кавычки :
Добавлено через 1 минуту и 1 секунду При вводе из консоли с помощью read/1, следует вводить строки, используя обратные кавычки :
Иначе не работает. |
||||||||
|
|||||||||
![]() ![]() ![]() |
Правила форума Prolog | |
|
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Void. |
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | Prolog | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |