0 / 0 / 0
Регистрация: 04.11.2010
Сообщений: 11
|
|
1 | |
Найти все целые корни кубического уравнения04.11.2010, 20:04. Показов 17662. Ответов 32
Метки нет (Все метки)
Добрый вечер.
Есть задача : Вводятся целые числа a,b,c,d.Найти все целые корни уравнения ax3+bx2+cx+d=0 (корни искать среди делителей d). Помогите написать код,который бы давал верный результат.Используя либо Cin,cout,либо printF,scanF. Спасибо за раннее.
0
|
04.11.2010, 20:04 | |
Ответы с готовыми решениями:
32
Найти все целые корни кубического уравнения Найти целые корни кубического уравнения Найти все целые корни уравнения Найти все целые корни уравнения ax3+bx2+cx+d=0 |
1 / 1 / 0
Регистрация: 26.11.2022
Сообщений: 48
|
|
07.02.2023, 18:24 | 22 |
Kuzia domovenok, Ну вот, пример уравнения где свободный член 5 - корень уравнения, значит ищем i перебираем до d, а не до d/2.
0
|
1 / 1 / 0
Регистрация: 26.11.2022
Сообщений: 48
|
|
07.08.2023, 17:00 | 24 |
Как решить эту задачу для больших чисел, например a, b, c, d = 109?
Считать будет больше одной секунды.
0
|
3718 / 2647 / 761
Регистрация: 29.06.2020
Сообщений: 9,800
|
|
07.08.2023, 19:07 | 25 |
0
|
07.08.2023, 19:53 | 26 |
Кубическое уравнение разрешимо в радикалах (согласно теореме Абеля - Руффини общее алгебраическое уравнение степени <= 4 разрешимо в радикалах). Соответственно, как верно выразился уважаемый SmallEvil, перебор не нужен, а корни можно найти по точной формуле (например, формула Кардано или тригонометрическая формула Виета), причем мы гарантированно найдем все три корня, независимо от того, целые они или нет. Если по условию задания нужно найти целые корни, то разумеется не составит труда реализовать проверку и вывести только целые корни (если, конечно, такие будут).
1
|
1 / 1 / 0
Регистрация: 26.11.2022
Сообщений: 48
|
|
17.08.2023, 17:50 | 27 |
SmallEvil, В формулах Кардано нужно будет считать числа т.к. входные данные a, b, c, d могут быть . Эти значения выходят за пределы типа данных long. Получается нужна длинная арифметика?
0
|
3718 / 2647 / 761
Регистрация: 29.06.2020
Сообщений: 9,800
|
|
17.08.2023, 20:56 | 29 |
Так, еще раз прочитал условие (ТЗ), и что я вижу.
То есть, находим делители d, и подставляем их в уравнение. При чем тут d/2 ?
1
|
Royal_X
|
17.08.2023, 21:03
#30
|
Не по теме: SmallEvil, я тоже не обратил внимание на этот момент... Бывает.
0
|
4925 / 3920 / 1620
Регистрация: 24.04.2014
Сообщений: 11,441
|
|
17.08.2023, 21:14 | 31 |
А зачем до d/2 перебирать делители, достаточно до sqrt(d), а это будет порядка 10^4.
1
|
1 / 1 / 0
Регистрация: 26.11.2022
Сообщений: 48
|
|
18.08.2023, 09:09 | 32 |
Jewbacabra, если идти до , то мы не переберем все возможные делители d.
0
|
3718 / 2647 / 761
Регистрация: 29.06.2020
Сообщений: 9,800
|
|
18.08.2023, 10:18 | 33 |
Переберем.
Код
i = 1; end = sqrt(n); while(i <= end) if (n % i == 0) divisors.push_back(i) divisors.push_back(n/i) i = i + 1;
1
|
18.08.2023, 10:18 | |
18.08.2023, 10:18 | |
Помогаю со студенческими работами здесь
33
Найти корни кубического уравнения Найти целые корни уравнения Корни кубического уравнения Действительные корни кубического уравнения методом Кардано Найти все корни уравнения Как найти все корни уравнения? Найти все корни уравнения двумя способами Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |