Определить, является ли заданная строка идентификатором - Prolog
Формулировка задачи:
Здравствуйте.
Возможно, кто-то знает как решить такую задачку
Есть строка, определить является ли она идентификатором
Решение задачи: «Определить, является ли заданная строка идентификатором»
textual
Листинг программы
predicates
is_a(char)
is_d(char)
is_ident(string)
is_ident_tail(string)
clauses
is_a(Ch) :-
Ch >= 'a', Ch <= 'z';
Ch >= 'A', Ch <= 'Z'.
is_d(Ch) :-
Ch >= '0', Ch <= '9'.
is_ident(S) :-
frontchar(S, Ch, R),
is_a(Ch),
is_ident_tail(R).
is_ident_tail("").
is_ident_tail(S) :-
frontchar(S, Ch, R),
is_a(Ch),
is_ident_tail(R).
is_ident_tail(S) :-
frontchar(S, Ch, R),
is_d(Ch),
is_ident_tail(R).