Форум программистов, компьютерный форум, киберфорум
Наши страницы
QBasic
Войти
Регистрация
Восстановить пароль
 
Ли2
10 / 10 / 24
Регистрация: 12.12.2017
Сообщений: 131
Записей в блоге: 2
1

Разложить многочлен на квадратные множители

03.01.2018, 19:34. Просмотров 153. Ответов 2
Метки нет (Все метки)

Дан многочлен x^4 + 5x^3 + 11x^2 + 13x + 6
Требуется его разложить на произведение двух
квадратных трехчленов. Надо сказать, что подобное
возможно всегда, даже если заданный многочлен
четвертой степени не имеет вещественных корней.
В таком случае его можно разложить на два квадратных
трехчлена, которые тоже не будут иметь вещественных
корней.
Данная программа написана под конкретный многочлен, но
она может быть обобщена на любой многочлен четвертой
степени. Как?
Можно также повысить точность вычислений. Как?

QBasic/QuickBASIC
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
REM
REM x^4 + 5x^3 + 11x^2 + 13x + 6 =
REM = (x^2 + ax + b)(x^2 + cx + d)
REM
REM  (x^2 + 2x + 3)(x^2 + 3x + 2)
REM
 
DECLARE FUNCTION f1! (a!, b!, c!, d!)
DECLARE FUNCTION f2! (a!, b!, c!, d!)
 
CLS
CONST eps = .0001
 
FOR a = .1 TO 5 STEP .01
FOR b = .1 TO 5 STEP .01
   c = 5 - a
   d = 6 / b
 
   y1 = f1(a, b, c, d)
   y2 = f2(a, b, c, d)
   z1 = ABS(y1 - 36) < eps
   z2 = ABS(y2 - 0) < eps
 
   IF z1 AND z2 THEN
      PRINT a; b; c; d
      GOTO 2018
   END IF
NEXT b, a
2018
END
 
FUNCTION f1 (a, b, c, d)
   f1 = (1 + a + b) * (1 + c + d)
END FUNCTION
 
FUNCTION f2 (a, b, c, d)
   f2 = (1 - a + b) * (1 - c + d)
END FUNCTION
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
03.01.2018, 19:34
Ответы с готовыми решениями:

Разложить многочлен s^3+6s^2+8s+9.2 на множители
Помогите пожалуйста разложить многочлен s^3+6s^2+8s+9.2 на множители

Разложить на множители многочлен
z^3-7z+6 п.с. доброго времени суток и с праздниками

Разложить многочлен на множители
Помогите, пожалуйста, разложить многочлен на множители. 2{x}^{4} - {x}^{2} -...

Разложить на многочлен на неприводимые множители
Задание: разложить на неприводимые действительные множители многочлен: (x^3 +...

Разложить многочлен на неприводимые множители.
Х^6-64

2
Catstail
Модератор
23623 / 11723 / 2047
Регистрация: 12.02.2012
Сообщений: 19,120
04.01.2018, 18:12 2
Задача сводится к решению системы 4-х нелинейных уравнений с 4-я неизвестными. Пусть исходный многочлен имеет вид http://www.cyberforum.ru/cgi-bin/latex.cgi?{x}^{4}+p{x}^{3}+q{x}^{2}+rx+s Будем искать его разложение вида: http://www.cyberforum.ru/cgi-bin/latex.cgi?({x}^{2}+{a}_{1}x+{a}_{0})*({x}^{2}+{b}_{1}x+{b}_{0}). Приравнивая коэффициенты при одинаковых степенях, получаем систему уравнений:

http://www.cyberforum.ru/cgi-bin/latex.cgi?\left\{\begin{matrix}s={a}_{0}*{b}_{0}\\ p={a}_{1}+{b}_{1}\\ q={b}_{0}+{a}_{1}*{b}_{1}+{a}_{0}\\ r={a}_{1}*{b}_{0}+{a}_{0}*{b}_{1}\end{matrix}\right.

Ее и нужно решать. Если решать в целых числах, то вполне подойдет прямой перебор.
2
Ли2
10 / 10 / 24
Регистрация: 12.12.2017
Сообщений: 131
Записей в блоге: 2
05.01.2018, 10:09  [ТС] 3
Catstail
Вы совершенно правы. Именно так я и пытался решить поставленную
мною задачу. Сначала преобразовал систему из четырех уравнений
в систему из двух уравнений с двумя неизвестными. И далее, пытаясь
исключить еще одно неизвестное получил громоздкое иррациональное
уравнение, решать которое, у меня пропало желание.
...
Вероятно все-таки проще другой вариант. Считать один квадратный
трехчлен заданным и на него поделить уравнение четвертой степени.
Нас должен интересовать остаток. Это будет в общем случае линейная
функция. Задав переменной икс конкретное значение, например x = 1,
будем менять значения коэффициентов нашего квадратного трехчлена
так, чтобы остаток принял значение по модулю меньшее наперед заданного
числа эпсилон (погрешность).
...
Да, это тоже перебор... Может есть какой-нибудь алгоритм, позволяющий
за небольшое число итераций решать эту задачу? Буду вам благодарен,
если вы подскажете в каком направлении двигаться!
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
05.01.2018, 10:09

Разложить многочлен на неприводимые множители
Доброго времени суток! Помогите разложить многочлен на неприводимые множители...

Разложить многочлен на линейные множители
1)x5 - 4x4 + 14x2 - 17x + 6 2) x5 - x4 -5x3 +x2 +8x +4 3) x4 -6x3 + 13x2 -12x...

Разложить на неприводимые множители многочлен:
x^7 + x^6 + x^5 - x^3 + x^2 - x - 1 принадлежащий F3


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru