Проверить, все ли элементы списка нули - 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).

Объяснение кода листинга программы

  1. nashpredic(S,[]):-zerolispisokspiskov(S),!. - если список пустой, то все элементы списка равны нулю. Конец доказательства.
  2. 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).

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


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

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

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