Добавил:
СПбГУТ * ИКСС * Программная инженерия Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Решения задач / KARDANO_ETC

.TXT
Скачиваний:
18
Добавлен:
30.03.2021
Размер:
3.95 Кб
Скачать
% ===== Задача =====
% Найти корни уравнения
% a*x^3 + b*x^2 + c*x + d = 0

% ===== Материал =====
% 1. https://ru.wikipedia.org/wiki/Формула_Кардано
% 2. https://1cov-edu.ru/mat_analiz/funktsii/ratsionalnye/mnogochleny/kubicheskie-uravneniya/formula-vieta/
% 3. https://1cov-edu.ru/mat_analiz/funktsii/ratsionalnye/mnogochleny/kubicheskie-uravneniya/formula-kardano/

% ===== Проверка при помощи Wolfram Alpha =====
% solve a*x^3 + b*x^2 + c*x + d = 0 where (a, b, c, d) = (1, 1, 1, 1)

% ===== Тестовые данные =====
%
% 0, 0, 0, 0 -> Infinite number of roots
%
% 0, 0, 0, 1 -> No roots
% 0, 0, 0, -1 -> No roots
%
% 0, 0, 1, 0 -> X1: 0
% 0, 0, -1, 0 -> X1: 0
%
% 0, 0, 1, 1 -> X1: -1
% 0, 0, 1, -1 -> X1: 1
% 0, 0, -1, 1 -> X1: 1
% 0, 0, -1, -1 -> X1: -1
%
% 0, 1, 1, 1 -> X1: -0.5 + 0.8660254037844386 * i, X2: -0.5 - 0.8660254037844386 * i
% 0, 1, 1, -1 -> X1: 0.6180339887498949, X2: -1.618033988749895
% 0, 1, -1, 1 -> X1: 0.5 + 0.8660254037844386 * i, X2: 0.5 - 0.8660254037844386 * i
% 0, 1, -1, -1 -> X1: 1.618033988749895, X2: -0.6180339887498949
%
% 0, -1, 1, 1 -> X1: -0.6180339887498949, X2: 1.618033988749895
% 0, -1, 1, -1 -> X1: 0.5 - 0.8660254037844386 * i, X2: 0.5 + 0.8660254037844386 * i
% 0, -1, -1, 1 -> X1: -1.618033988749895, X2: 0.6180339887498949
% 0, -1, -1, -1 -> X1: -0.5 - 0.8660254037844386 * i, X2: -0.5 + 0.8660254037844386 * i
%
% 1, 1, 1, 1 -> X1: -1.0, X2: 5.551115123125783e-17 + 0.9999999999999999 * i, X3: 5.551115123125783e-17 - 0.9999999999999999 * i
% 1, 1, 1, -1 -> X1: 0.5436890126920766, X2: -0.7718445063460383 + 1.1151425080399373 * i, X3: -0.7718445063460383 - 1.1151425080399373 * i
% 1, 1, -1, 1 -> X1: -1.8392867552141612, X2: 0.41964337760708065 + 0.6062907292071992 * i, X3: 0.41964337760708065 - 0.6062907292071992 * i
% 1, 1, -1, -1 -> X1: 1.0000000055879354, X2: -1.0000000027939677
% 1, -1, 1, 1 -> X1: -0.5436890126920766, X2: 0.7718445063460383 + 1.1151425080399373 * i, X3: 0.7718445063460383 - 1.1151425080399373 * i
% 1, -1, 1, -1 -> X1: 1.0, X2: -5.551115123125783e-17 + 0.9999999999999999 * i, X3: -5.551115123125783e-17 - 0.9999999999999999 * i
% 1, -1, -1, 1 -> X1: -0.9999999944120646, X2: 0.9999999972060323
% 1, -1, -1, -1 -> X1: 1.8392867552141612, X2: -0.41964337760708065 + 0.6062907292071992 * i, X3: -0.41964337760708065 - 0.6062907292071992 * i
%
% -1, 1, 1, 1 -> X1: 1.8392867552141612, X2: -0.41964337760708065 + 0.6062907292071992 * i, X3: -0.41964337760708065 - 0.6062907292071992 * i
% -1, 1, 1, -1 -> X1: -0.9999999944120646, X2: 0.9999999972060323
% -1, 1, -1, 1 -> X1: 1.0, X2: -5.551115123125783e-17 + 0.9999999999999999 * i, X3: -5.551115123125783e-17 - 0.9999999999999999 * i
% -1, 1, -1, -1 -> X1: -0.5436890126920766, X2: 0.7718445063460383 + 1.1151425080399373 * i, X3: 0.7718445063460383 - 1.1151425080399373 * i
% -1, -1, 1, 1 -> X1: 1.0000000055879354, X2: -1.0000000027939677
% -1, -1, 1, -1 -> X1: -1.8392867552141612, X2: 0.41964337760708065 + 0.6062907292071992 * i, X3: 0.41964337760708065 - 0.6062907292071992 * i
% -1, -1, -1, 1 -> X1: 0.5436890126920766, X2: -0.7718445063460383 + 1.1151425080399373 * i, X3: -0.7718445063460383 - 1.1151425080399373 * i
% -1, -1, -1, -1 -> X1: -1.0, X2: 5.551115123125783e-17 + 0.9999999999999999 * i, X3: 5.551115123125783e-17 - 0.9999999999999999 * i
%
% 5, 10, 5, 20 -> X1: -2.3145962122767476, X2: 0.15729810613837392 + 1.3051515265047475 * i, X3: 0.15729810613837392 - 1.3051515265047475 * i
% 5, 5, 10, 12 -> X1: -1.1226836353858318, X2: 0.06134181769291597 + 1.4608121341156244 * i, X3: 0.06134181769291597 - 1.4608121341156244 * i
%
% 30, 50, -3020, 1 -> X1: 9.234312935074106, X2: -10.90131072906513, X3: 0.00033112833941251196
% 1000, 10000, 30000, 25925.9 -> X1: -1.5075875861063157, X2: -5.159071302719473, X3: -3.333341110984911
% 100, 222, -735.72, 333 -> X1: 1.3725826415620375, X2: -4.173841727564863, X3: 0.5812590862218667
Соседние файлы в папке Решения задач