ВУЗ:
Составители:
Рубрика:
51
fronttoken («Expert systems», «Expert», « systems»)- в данном случае
будет проверена возможность склейки лексемы и остатка в строку «Expert
systems».
2.16 Преобразование данных в Прологе
Для преобразования данных из одного типа в другой Пролог имеет
следующие встроенные предикаты:
upper_lower;
str_char;
str_int;
str_real;
char_int.
Все предикаты преобразования данных имеют два терма. Все
предикаты имеют два направления преобразования данных в зависимости
от
того, какой терм является свободной или связанной переменной.
Пример 57:
upper_lower («STARS», S2).
upper_lower (S1,«stars»).
str_char («T», C).
str_char (S, ’T’).
str_int («123», N).
str_int (S, 123).
str_real («12.3», R).
str_real (S, 12.3).
char_int (‘A’, N).
char_int (C, 61).
В Прологе нет встроенных предикатов для преобразования
действительных чисел в целые и наоборот, или строк в символы. На самом
деле, правила преобразования данных типов очень просты и могут быть
заданы в программе самими программистом.
Пример 58:
predicates
conv_real_int (real, integer)
conv_int_real (integer, real)
conv_str_symb (string, symbol)
clauses
conv_real_int (R, N):- R=N.
conv_int_real (N, R):- N=R.
conv_str_symb (S, Sb):- S=Sb.
goal
conv_real_int (5432.765, N). (N= 5432).
conv_int_real (1234, R). (R=1234).
conv_str_symb («Visual Prolog», Sb). (Sb=Visual Prolog).
Страницы
- « первая
- ‹ предыдущая
- …
- 49
- 50
- 51
- 52
- 53
- …
- следующая ›
- последняя »