Написать программу для получения значения n-го элемента списка - Prolog
Формулировка задачи:
Срочно ! Сессия задали много переделать работ... Облегчите работу плиз !!! Написать программу для получения значения n-го элемента списка. Например: в списке [three, one, two] второй элемент равен one.
Решение задачи: «Написать программу для получения значения n-го элемента списка»
textual
Листинг программы
nth([H|_], 1, H). nth([_|T], N, X):- N > 1, NN is N - 1, nth(T, NN, X).
Объяснение кода листинга программы
nth([H|_], 1, H)
- этот фрагмент кода проверяет, является ли список пустым. Если это так, то возвращается значение первого элемента списка (H).nth([_|T], N, X):-
- этот фрагмент кода проверяет, является ли список не пустым. Если это так, то:N > 1
- этот фрагмент кода проверяет, является ли номер элемента больше 1. Если это так, то:NN is N - 1
- этот фрагмент кода вычисляет номер предыдущего элемента.nth(T, NN, X)
- этот фрагмент кода рекурсивно вызывает функцию nth для списка T и номера NN, и присваивает результат переменной X.- Возвращается значение X.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д