Поиск по списку структур, задача - Prolog

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

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

Все доброго времени суток. Задача: Есть структура мальчик, которая выглядит так
Пирог принимает значение ест\не_ест. То есть определяем, ест ли мальчик пирог. Есть три мальчика и каждый из них может есть, а может и не есть пирог. Нужно написать предикат, который будет подсчитывать количество нужных структур. Сейчас код ищет только одно вхождение. Нужно как то это исправить. Очень буду благодарен за помощь.
Результат сейчас: Кол= 1Мальчики=[человек("ваня","ест"),человек("володя","ест"),человек("миша","ест")] А должно быть: Кол= 3Мальчики=[человек("ваня","ест"),человек("володя","ест"),человек("миша","ест")]

Решение задачи: «Поиск по списку структур, задача»

textual
Листинг программы
count_member(Мальчики,человек(_,ест),0,Количество),

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

  1. Задана структура данных человек(_,ест) и список структур данных Мальчики.
  2. Переменная Количество инициализирована нулем.
  3. Функция count_member вызывается с аргументами Мальчики, человек(_,ест), 0 и Количество.
  4. Функция count_member выполняет поиск структур данных человек(_,ест) в списке структур данных Мальчики.
  5. При каждом обнаружении структуры данных человек(_,ест) в списке структур данных Мальчики, функция увеличивает значение переменной Количество на единицу.
  6. После завершения поиска, функция возвращает значение переменной Количество.

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


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

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

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