palindrom(A,S) – главная функция программы, проверяет, является ли строка палиндромом; А – заданная строка, S – строка-ответ задачи.
Алгоритм: применяет к строке А функцию del_useless, удаляющую все лишние символы; переводит все символы в нижний регистр с помощью стандартной функции toLowerCase; переворачивает строку задом наперёд с помощью clockwise и проверяет, равна ли она изначальной.
del_useless(A,S) – проверяет каждый символ строки А; если он – разделитель, то он не включаются в результирующую строку S.
clockwise(A,S) – переписывает строку А задом наперёд в результирующую строку S.
Результаты работы:
Вывод
В данной лабораторной работе были получены необходимые навыки работы со строками в Visual Prolog 7.3, а также использования таких предикатов как length, concat, frontChar, frontToken.