Реферат Курсовая Конспект
Работа с данными типа string - раздел Программирование, Логическое программирование Concat( Строка1, Строка2, Строказ) (String,string,st...
|
concat( строка1, строка2, строкаЗ)
(string,string,string):(i,i,i)(i,i,o)(i,o,i)(o,i,i)
В зависимости от конкретизации выполняется лексикографическая
операция строка1+строка2=строкаЗ.
frontchar( строка, первый_знак_строки,остаток_строки)
(string,char,string): (l,1, i)( i, i,o)( i,o; i)(o,1,l)(i,o,o)
В зависимости от конкретизации выполняется лексикографическая
операция строка = первы_знак_строки + остаток_строки.
Например, преобразование строки в список отдельных знаков и
наоборот:
domains .
charlist =char*
predicates
str_lst(string,charlist)
clauses
str..lst("", []):-!'
str_lst(S,[H|T]):-.
bound(S),!, /* имеется строка? */
frontchar(S,H,Rs),
str_lst(Rs,T).
str_lst(S,[H|T]):-
bound(H), /* имеется список знаков? */
str_lst(Rs,T),
frontchar(S,H,Rs).
После-запуска программы (Run) возможно указать разные цели:
Goal: str_lst("Это строка",X)
Х=[' Э',' т',' о',' ',' с',' т',' р',' о',' к',' а' ]
1 Solution (одно решение)
Goal: str_lst(X,[' з','н','а',' к',' и' ])
Х=знаки
1 Solution
Goal:<ESC> (ключ для выхода в главное меню)
frontstr(количество,строка,передняя_строка,остаток_строки)
(integer,string,string,string): (i,i,o,o)
Из указанной строки количество знаков возвращается в передней
строке, а остальные в остатке строки.
fronttoken(строка,токен,остаток_строки)
(string,string,string): (i,i,i)(i,i,o)(i,o,i)(o,i,i)(i,o,o)
В зависимости от конкретизации выполняется лексикографическая
операция строка = токен + остаток_строки. При этом один или
несколько знаков образуют токен в следующих случаях:
- они образуют имя Турбо-Пролога;
- они представляют целое или действительное число;
- знаки "+" и "-" являются отдельными знаками;
- имеется отдельно стоящий знак (кроме пробела).
Например fronttoken("это тест",Х,У) дает Х="это", Y=" тест".
str_len(строка,длина) ' .
(string,integer):(i,i)(i,o)
Проверяется (i,i) или возвращается (i,o) длина строки.
– Конец работы –
Эта тема принадлежит разделу:
Логическое программирование... После многолетних теоретических работ по математической логике в году в... Для программиста особенность языка Пролог состоит в том что он на основе выражений логики предикатов может заниматься...
Если Вам нужно дополнительный материал на эту тему, или Вы не нашли то, что искали, рекомендуем воспользоваться поиском по нашей базе работ: Работа с данными типа string
Если этот материал оказался полезным ля Вас, Вы можете сохранить его на свою страничку в социальных сетях:
Твитнуть |
Новости и инфо для студентов