С Новым годом! Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.63/489: Рейтинг темы: голосов - 489, средняя оценка - 4.63
0 / 0 / 0
Регистрация: 21.12.2010
Сообщений: 85

Решение уравнений методом хорд на C++

20.02.2011, 18:20. Показов 93848. Ответов 7
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Здравствуйте. Столкнулся с проблемой, решения уравнения методом хорд, с программированием все хорошо, и с матетематикой не плохо, только вот не могу понять алгоритм решения, один хороший пример и я бы разобрался.
Помогите пожалуйста решить уравнение вида aX^3+bX^2+cX+d=0,
буду очень признателен, можно без комментариев.
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
20.02.2011, 18:20
Ответы с готовыми решениями:

Решение уравнений методом хорд
Здравствуйте. Столкнулся с проблемой, решения уравнения методом хорд, с программированием все хорошо, и с матетематикой не плохо, только...

Решение уравнения методом хорд и касательных
Комбінований метод хорд та дотичних x належить Перевожу. Решение уравнения комбинированным методом хорд и касательных. х...

Решение уравнений методом Гаусса
Был создан двухмерный динамический пассив, где указываем кол-во строк и столбцов, а затем записываем значение каждого числа всех строк...

7
Эксперт JavaЭксперт С++
 Аватар для M128K145
8384 / 3617 / 419
Регистрация: 03.07.2009
Сообщений: 10,709
20.02.2011, 21:11
Лучший ответ Сообщение было отмечено как решение

Решение

Вставьте только свою функцию
C++
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
#include <iostream>
#include <cmath>
 
double func(double x)
{
    return pow(x, 3) - 2 * pow(x, 2) - 6 * x - 1;
}
 
double find(double infinum, double supremum, double epsilon)
{
    while (fabs(supremum - infinum) > epsilon)
    {
        infinum = supremum - (supremum - infinum) * func(supremum) / (func(
                supremum) - func(infinum));
        supremum = infinum - (infinum - supremum) * func(infinum) / (func(
                infinum) - func(supremum));
    }
 
    return supremum;
}
 
int main()
{
    double a = -5, b = 5;
    std::cout << find(a, b, 0.0001) << std::endl;
    return 0;
}
8
0 / 0 / 0
Регистрация: 21.12.2010
Сообщений: 85
21.02.2011, 05:24  [ТС]
Огромное спасибо!!!
0
 Аватар для olleg90
40 / 40 / 12
Регистрация: 06.01.2011
Сообщений: 90
21.02.2011, 15:44
Лучший ответ Сообщение было отмечено как решение

Решение

C++
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
#include <iostream>
#include <cmath>
#include <locale.h>
using namespace std;
double f(double x)
{
return pow(x,3)-0.2*pow(x,2)+0.2*x-1.2;
}
 
double findRoot(double a, double b, double e)
{
while(fabs(f(b)) > e)
{
a = b - ((b - a) * f(b))/(f(b) - f(a));
b = a - ((a - b) * f(a))/(f(a) - f(b));
}
return b;
}
int main()
{
setlocale(LC_ALL,"Russian");
double a, b, e;
a=0.5; b=1.5; e=0.0001;
cout<<"Корень уравнения x="<<findRoot(a, b, e)<<endl;
}
5
Эксперт JavaЭксперт С++
 Аватар для M128K145
8384 / 3617 / 419
Регистрация: 03.07.2009
Сообщений: 10,709
21.02.2011, 21:00
olleg90, вы перепутали метод хорд с методом касательных. У вас как раз пример решения методом касательных
0
 Аватар для olleg90
40 / 40 / 12
Регистрация: 06.01.2011
Сообщений: 90
23.02.2011, 17:34
Лучший ответ Сообщение было отмечено как решение

Решение

M128K145,да нет= )) вот метод касательных или как его еще называют метод Ньютона
C++
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
 #include <iostream>
#include <cstdlib>
#include <cmath>
 
using namespace std;
 
double f(double x) { return cos(x)-x+1; } //Функция, нули которой ищем
double df(double x) { return -sin(x)-1; } //Её производная
 
int main() {
 double tmp,x,eps;
 int N=0;
 
 cout<<"eps=";
 cin>>eps;   //Точность
 cout<<"x0=";
 cin>>x;     //Начальное приближение
 tmp=x+2*eps;
    while(fabs(x-tmp)>eps) { //Выбран останов |x[n]-x[n+1]|<eps
     tmp=x;
     x=x-f(x)/df(x);
     N++;
   }
   cout.setf(ios::scientific);
cout<<endl<<endl<<"x="<<x<<endl<<"N="<<N<<endl;
cin>>N;
return 0;
}
3
Den190312
07.05.2013, 23:12
огромное спасибо за подсказку полезную, но возможно задать вопрос, здесь что дает N? итерации? т.е. начиная с 0 и до какой-то определенной, а также, что такое tmp=x+2*eps - во всех алгортимах умалчивается предназначение, а также вопрос, где мы пишем double f(double x) { return 4*x-16/pow(x,2); } - здесь производная или просто функция изначальна? а для следующего мы должныиспользовать вторую производную..
3 / 3 / 0
Регистрация: 12.11.2016
Сообщений: 29
08.05.2017, 09:30
скажите пожалуйста а как найти интервалы а;b если корней несколько?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
08.05.2017, 09:30
Помогаю со студенческими работами здесь

Решение системы уравнений методом Гауса
Вот, ради интереса попробовал написать программу (С++). Сейчас она работает, но выполняет лишь первый шаг. Нужно чтобы программа выполняла...

Решение нелинейных уравнений методом итераций
Нашел на форуме такой пример решения уравнения методом итераций: #include &lt;conio.h&gt; #include &lt;math.h&gt; #include...

Решение системы уравнений методом Гаусса
Всем доброго времени суток. Нужно написать программу для решения СЛАУ методом Гаусса. #include &lt;stdio.h&gt; #include...

Решение линейных уравнений методом Гаусса
Доброе утро! Вы могли бы помочь мне решить вариант №29

Решение линейных уравнений методом Гаусса
Всем привет. Поставлена задача создать программу, способную решать линейные уравнения методом Гаусса. А я собственно в С++ - дуб...


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

Или воспользуйтесь поиском по форуму:
8
Ответ Создать тему
Новые блоги и статьи
Новый CodeBlocs. Версия 25.03
palva 04.01.2026
Оказывается, недавно вышла новая версия CodeBlocks за номером 25. 03. Когда-то давно я возился с только что вышедшей тогда версией 20. 03. С тех пор я давно снёс всё с компьютера и забыл. Теперь. . .
Модель микоризы: классовый агентный подход
anaschu 02.01.2026
Раньше это было два гриба и бактерия. Теперь три гриба, растение. И на уровне агентов добавится между грибами или бактериями взаимодействий. До того я пробовал подход через многомерные массивы,. . .
Учёным и волонтёрам проекта «Einstein@home» удалось обнаружить четыре гамма-лучевых пульсара в джете Млечного Пути
Programma_Boinc 01.01.2026
Учёным и волонтёрам проекта «Einstein@home» удалось обнаружить четыре гамма-лучевых пульсара в джете Млечного Пути Сочетание глобально распределённой вычислительной мощности и инновационных. . .
Советы по крайней бережливости. Внимание, это ОЧЕНЬ длинный пост.
Programma_Boinc 28.12.2025
Советы по крайней бережливости. Внимание, это ОЧЕНЬ длинный пост. Налог на собак: https:/ / **********/ gallery/ V06K53e Финансовый отчет в Excel: https:/ / **********/ gallery/ bKBkQFf Пост отсюда. . .
Кто-нибудь знает, где можно бесплатно получить настольный компьютер или ноутбук? США.
Programma_Boinc 26.12.2025
Нашел на реддите интересную статью под названием Anyone know where to get a free Desktop or Laptop? Ниже её машинный перевод. После долгих разбирательств я наконец-то вернула себе. . .
Thinkpad X220 Tablet — это лучший бюджетный ноутбук для учёбы, точка.
Programma_Boinc 23.12.2025
Рецензия / Мнение/ Перевод Нашел на реддите интересную статью под названием The Thinkpad X220 Tablet is the best budget school laptop period . Ниже её машинный перевод. Thinkpad X220 Tablet —. . .
PhpStorm 2025.3: WSL Terminal всегда стартует в ~
and_y87 14.12.2025
PhpStorm 2025. 3: WSL Terminal всегда стартует в ~ (home), игнорируя директорию проекта Симптом: После обновления до PhpStorm 2025. 3 встроенный терминал WSL открывается в домашней директории. . .
Как объединить две одинаковые БД Access с разными данными
VikBal 11.12.2025
Помогите пожалуйста !! Как объединить 2 одинаковые БД Access с разными данными.
Новый ноутбук
volvo 07.12.2025
Всем привет. По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне: Ryzen 5 7533HS 64 Gb DDR5 1Tb NVMe 16" Full HD Display Win11 Pro
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru