БД о автомобилях. SWI Prolog

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

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

1. Создать базу данных о заданной предметной области в виде множества фактов языка Пролог (не менее 5 фактов). Информацию о каждом компоненте БД представить в виде структуры. 2. Разработать набор предикатов, осуществляющих взаимодействие с БД, при помощи которых можно реализовать все типы запросов, приведенные в варианте задания. Найденные решения записать в виде фактов внутренней базы данных Пролога. 3. Предусмотреть проверку факта, являющегося ответом на запрос в БД. Если такой факт существует, то выдать его в качестве ответа на запрос. Если такого факта не существует в базе данных, то запустить запрос на выполнение и записать результат в БД.

Предметная область – база данных продажи автомобилей. Каждый автомобиль может быть описана структурой: марка автомобиля, страна фирмы-изготовителя, список фирм-продавцов. Фирма-продавец может быть описана структурой: название фирмы, страна, список имеющихся моделей. Модель может быть описана структурой: наименование модели, цена, список имеющихся расцветок. Реализовать следующие типы запросов: 1. Найти марку и модель автомобиля, у которой минимальная цена; 2. Подсчитать число расцветок автомобиля заданной модели у определенного продавца; 3. Найти все страны-изготовителя, выпускающие автомобили заданной марки; 4. Найти все марки автомобилей, продающиеся в заданной стране; 5. Найти все фирмы, которые продают автомобили заданной расцветки. Помогите плиз, большое спасибо)

Решение задачи: «БД о автомобилях. SWI Prolog»

textual
Листинг программы
car(
marka(Toyota),
stranaF(Japan),
    prod('Бызово',
        'Россия',
        [('Алтеза',125000,['белый','красный','желтый']),
        ('Камри',325000,['серый','красный','черный'])]),).
    
 
car(
marka(Nissan),
stranaF(Japan),
    prod('Бызово',
        'Россия',
        [model('Санни',125000,['белый','красный','желтый']),
        model('Силфи',225000,['корич','белый','черный'])])).
 
car(
marka(Chevrolet),
stranaF(USA),
    prod('Сити',
        'Украина',
        [('Камаро',1125000,['белый','серый','желтый']),
        ('Лачети',345000,['голуб','белый','синий'])])).

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


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

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

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