Арифметические операции: найти "срединный" элемент списка нечетной длины - Prolog

Узнай цену своей работы

Формулировка задачи:

Помогите написать программу в прологе. Желательно Turbo Prolog. Необходимо найти «срединный» элемент списка нечетной длины.. Вот пример для вычисления суммы четных элементов числового списка:
Листинг программы
  1. /* Ливорекурсивна процедура расчета суммы четных элементов списка sum (+ Cписок, -Cyммa) */
  2. t([Hl],0). % граничное условие для списка нечетной длины
  3. t([Hl,H2],H2). % граничное условие для списка четной длины
  4. t([Hl,H2[T],Sum):-
  5. t(T,Int_sum),
  6. Sum is Int_sum+H2.
  7.  
  8. Запросы
  9. t([l,2,3,4,5],S).
  10.  
  11. S = 6 ->
  12.  
  13. yes
  14. t([l,2,3,4,5,6],S).
  15.  
  16. S = 12 ->
  17.  
  18. yes

Решение задачи: «Арифметические операции: найти "срединный" элемент списка нечетной длины»

textual
Листинг программы
  1. mid(L, X) :- midd(L, L, X).
  2.  
  3. midd([_], [X|_], X).
  4. midd([_,_|T1], [_|T2], X) :- midd(T1, T2, X).

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

В данном коде реализован рекурсивный вызов для поиска «среднего» элемента списка нечетной длины. Пример вызова: mid([1,3,5,7,9], 5, X). Результат выполнения: X = 5

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


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

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

13   голосов , оценка 4.154 из 5

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут
Похожие ответы