Вывести строку, если в ней только латинские буквы - Prolog

Узнай цену своей работы

Формулировка задачи:

Доброго времени суток. Написал программу, которая предикат который считает количество латинских символов в строке. Вот мой код:
Помогите пожалуйста, исправить так, чтобы если символы все латинские выводилась строка, если есть цифры например, то выводилось количество лат.символов

Решение задачи: «Вывести строку, если в ней только латинские буквы»

textual
Листинг программы
predicates
nondeterm check(char).
inc(char,integer).
nondeterm char_count(string,integer).
task(string)
length(string,integer)
 
clauses
check(X):-char_int(X,Code), char_int('A',CodeA), char_int('Z',CodeZ),
    Code>=CodeA, Code<=CodeZ.
check(X):-char_int(X,Code), char_int('a',CodeA), char_int('z',CodeZ),
    Code>=CodeA, Code<=CodeZ.
 
length("",0).
length(S,N) :- frontchar(S,_,RS), length(RS,N1), N=N1+1.
 
inc(Char,1):-check(Char),!.
inc(_,0).
 
char_count("",0). 
char_count(S,N) :-
              frontchar(S,Char,S1),char_count(S1,N1),
              inc(Char,Inc),N=N1+Inc. 
 
task(S) :- char_count(S,N), length(S,L), N=L, write(S).
task(S) :- char_count(S,N), length(S,L), N<L, write("Symbol count =",N). 
 
              
goal
task("B45X2FG0OP"),nl.

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

10   голосов , оценка 4.1 из 5
Похожие ответы