Проверить, все ли элементы списка нули - Prolog
Формулировка задачи:
Проверить все ли элементы списка нули.
Пример:
zerolispis([0,2,0])
No
zerolispis([0,0,0])
Yes
Решение задачи: «Проверить, все ли элементы списка нули»
textual
Листинг программы
nashpredic(S,[]):-zerolispisokspiskov(S),!. nashpredic(S,[Q|P]):-polspis(S,K),max_list(K,M),n_el(K,M,Q),n_element(S,Q,Z),delizspis(S,Z,L),nashpredic(L,P).
Объяснение кода листинга программы
nashpredic(S,[]):-zerolispisokspiskov(S),!.
- если список пустой, то все элементы списка равны нулю. Конец доказательства.nashpredic(S,[Q|P]):-polspis(S,K),max_list(K,M),n_el(K,M,Q),n_element(S,Q,Z),delizspis(S,Z,L),nashpredic(L,P).
- если список не пустой, то берется его хвост (Q), ищется максимальное значение элемента списка (M), проверяется, является ли текущий элемент (Q) нулем (n_el), если да, то список сокращается на один элемент (delizspis), и рекурсивно вызывается проверка на нулевость для оставшегося списка (nashpredic).
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д