Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Решение уравнения четвёртой степени на Prolog.docx
Скачиваний:
0
Добавлен:
02.01.2026
Размер:
1.12 Mб
Скачать

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

Отчёт

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

Разработка программы решения уравнения четвертой степени”

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

Выполнил:

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

Андреев Артур Алексеевич

___________________

(подпись)

Проверил:

Ерофеев С.А.

___________________

(подпись)

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

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

Целью работы является разработка программы на языке Turbo Prolog 2.0 для решения уравнения четвёртой степени  с автоматическим выбором метода в зависимости от значений коэффициентов и считыванием этих коэффициентов из файла.

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

  1. Определить домены и предикаты, необходимые для решения уравнения: - домены для действительных чисел и файлов; - предикаты для чтения коэффициентов, вычисления значения полинома, реализации метода хорд, схемы Горнера, схемы Кардано, а также для вывода найденных корней и сообщений.

  2. Реализовать считывание коэффициентов уравнения из файла в формате: a, b, c, d, k где коэффициенты представлены вещественными числами вида 1.0, 1.2, 5.0, 6.0, 0.0.

  3. Разработать ветвление для обработки различных случаев в зависимости от коэффициентов: - при   - решать полное уравнение четвёртой степени: • найти первый корень методом хорд; • понизить степень полинома по схеме Горнера и найти оставшиеся корни; - при   - решать кубическое уравнение по схеме Кардано; - при   - решать квадратное уравнение по формуле ; - при   - решать линейное уравнение по формуле ; - при   -выводить сообщение «Решений нет»; - при   -выводить сообщение «Любое число».

  4. Реализовать алгоритмы численного решения: - метод хорд для нахождения первого корня уравнения четвёртой степени; - понижение степени полинома по схеме Горнера с последующим поиском оставшихся корней; - схему Кардано для решения кубического уравнения; - аналитические формулы для квадратного и линейного случаев; - обработку ситуаций, когда вещественных корней нет.

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

Файл "coeffs.txt", содержащий коэффициенты уравнения четвертой степени.

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

После запуска предиката go программа выводит:

  1. Считанные коэффициенты  .

  2. Определённый тип уравнения

  3. Вычисленные корни уравнения: - один корень методом хорд + остальные по Горнеру (если  ); - три корня по Кардано (если кубическое); - два корня квадратного уравнения; - один корень линейного уравнения; - либо сообщение: • «Решений нет» • «Любое число».

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

Алгоритм работы программы представляет собой последовательность шагов по анализу коэффициентов уравнения четвёртой степени, считанных из файла. Программа определяет тип уравнения (четвёртое, третье, второе или первое) и в зависимости от этого выбирает соответствующий метод решения. При   находится первый корень методом хорд, затем степень полинома понижается по схеме Горнера и вычисляются остальные корни. При   выполняется пошаговая проверка коэффициентов   и используются: схема Кардано для кубического уравнения, квадратная формула, линейная формула или вывод соответствующих сообщений при вырожденных случаях.