Заменить в строке все цифровые символы нулями - Prolog

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

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

И google, и yandex мне не помогли. =). Темы такой на форуме нету, поэтому прошу поделится мыслями. Требуется заменить в строке все цифровые символы нулями. Вначале пытался сделать в общем виде для замены одного вводимого символа другим, но как-то не работает.
Не допонимаю, сам алгоритм работы похоже я:
И как сделать проверку на цифровые символы?

Решение задачи: «Заменить в строке все цифровые символы нулями»

textual
Листинг программы
predicates
   nondeterm change(string,string)
   nondeterm cyfra(char)
clauses
   cyfra('1').
   cyfra('9').
   change("","").
   change(S,R):-
    frontchar(S,H,T),
    cyfra(X),H=X,!,
    change(T,Tr),
    frontchar(R,'0',Tr).
   change(S,R):-
    frontchar(S,H,T),
    change(T,Tr),
    frontchar(R,H,Tr).
goal
   change("as1231 3129312",X).

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


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

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

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