• 15 апреля стартует «Курс «SQL-injection Master» ©» от команды The Codeby

    За 3 месяца вы пройдете путь от начальных навыков работы с SQL-запросами к базам данных до продвинутых техник. Научитесь находить уязвимости связанные с базами данных, и внедрять произвольный SQL-код в уязвимые приложения.

    На последнюю неделю приходится экзамен, где нужно будет показать свои навыки, взломав ряд уязвимых учебных сайтов, и добыть флаги. Успешно сдавшие экзамен получат сертификат.

    Запись на курс до 25 апреля. Получить промодоступ ...

Создайте предикат, удаляющий из данной строки все повторные вхождения символов prolog 5.2

  • Автор темы 203
  • Дата начала
2

203

Здравствуйте. Может кто может помочь решить задачу. Создайте предикат, удаляющий из данной строки все повторные вхождения символов (нужно брать входную строку из файла, а полученный результат записать в новый файл). Заранее спасибо.
Вот что у меня получилось (сделано не правильно т.к не работает)

Код:
domains
charArray=char*
str=string
strl=str*
 
predicates
remall(charArray,str,str)
task(str,str)
   
nondeterm run
 
clauses
remall(_,"","").		
remall(C,S,R) :- frontchar(S,C,RS), remall(C,RS,R),!.
remall(C,S,R) :- frontchar(S,Q,RS), remall(C,RS,RR), frontchar(R,Q,RR).
 
task("",""). 
task(S,R) :- frontchar(S,A,RS), remall(A,RS,RRS),  task(RRS,RR), frontchar(R,A,RR).
 
run :- file_str("D:/Work/input.txt",S), write(S), nl, file_str("D:/Work/output.txt", S). %вывод не сделан
 
goal
run.
 
Мы в соцсетях:

Обучение наступательной кибербезопасности в игровой форме. Начать игру!