Скачиваний:
0
Добавлен:
02.01.2026
Размер:
1.71 Mб
Скачать

Федеральное государственное бюджетное образовательное учреждение высшего образования "Санкт-Петербургский государственный университет телекоммуникаций им. Проф. М.А. Бонч-Бруевича"

Отчёт

По лабораторной работе №5

Разработка базы данных по рулевым редукторам”

Дисциплина: «Разработка приложений искусственного интеллекта в киберфизических системах»

Выполнил:

Студент 3 курса группы ИКПИ – 32

Иванов Олег Владимирович

___________________

(подпись)

Проверил:

Ерофеев С.А.

___________________

(подпись)

г. Санкт-Петербург, 2025 г.

Постановка задачи

Целью работы является разработка программы для создания, хранения и управления базой данных по рулевым редукторам и их компонентам автомобиля УАЗ Патриот с возможностью выполнения основных операций: добавление, удаление, редактирование, просмотр базы данных и экспорт данных.

Для достижения этой цели необходимо выполнить следующие задачи:

  1. Определить домены и предикаты для хранения информации о рулевых редукторах и их параметрах;

  2. Реализовать загрузку и сохранение базы данных из файла;

  3. Организовать взаимодействие пользователя с базой данных через меню;

  4. Реализовать операции добавления, удаления и редактирования элементов базы;

  5. Обеспечить возможность подсчёта количества элементов и экспорта данных в CSV-файл;

  6. Протестировать программу на различных наборах данных, включая пустую базу и предварительно заполненную.

Входные данные:

Входными данными являются:

  • Файл базы данных (по умолчанию datauaz.txt), содержащий записи рулевых редукторов в формате:

steering_gear("Name", "Article", "Vehicle", "Description", Price, Quantity)

  • Пользовательский ввод для взаимодействия с меню программы: выбор опций, ввод значений для добавления или редактирования элементов, ввод имени файла для сохранения или загрузки базы.

Выходные данные:

Программа формирует следующие результаты:

  1. Отображение базы данных в консоли:

  • полный вывод всех элементов базы;

  • пошаговый вывод с ожиданием ввода пользователя;

  1. Информация о конкретном рулевом редукторе;

  2. Подсчёт количества элементов в базе;

  3. Файл базы данных после сохранения;

  4. CSV-файл с экспортированными данными;

  5. Сообщения о выполненных действиях (добавление, удаление, редактирование, ошибки).

Суть алгоритма заключается в следующем:

Программа организована как интерактивная система управления базой данных, состоящая из следующих модулей:

  1. Модуль загрузки и сохранения базы данных

  • Проверяет существование файла базы данных и загружает записи;

  • Обеспечивает сохранение текущего состояния базы в файл и экспорт в CSV;

  • Позволяет изменять имя текущего файла базы данных.

  1. Модуль управления записями базы данных

  • Добавление нового рулевого редуктора с проверкой корректности введённых данных;

  • Удаление записи по имени;

  • Редактирование существующей записи с отображением текущих значений;

  • Подсчёт количества элементов в базе с использованием временной структуры для сохранения целостности данных.

  1. Модуль пользовательского меню

  • Отображает список возможных действий;

  • Обеспечивает обработку выбора пользователя и вызов соответствующих функций;

  • Поддерживает рекурсивное возвращение в меню после выполнения действия.

  1. Вспомогательные модули

  • Проверка корректности ввода положительных чисел;

  • Временное хранение данных для операций с базой;

  • Вывод информации в консоль и управление ожиданием ввода пользователя.

Программа гарантирует целостность данных, корректную обработку ошибок и интерактивное взаимодействие с пользователем.