Форум программистов, компьютерный форум CyberForum.ru

Методом половинного деления найти решение нелинейных уравнений - C++

Восстановить пароль Регистрация
 
denstr
3 / 3 / 0
Регистрация: 21.11.2011
Сообщений: 143
10.11.2012, 13:53     Методом половинного деления найти решение нелинейных уравнений #1
Методом половинного деления найти решение следующих нелинейных
Миниатюры
Методом половинного деления найти решение нелинейных уравнений  
Лучшие ответы (1)
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
10.11.2012, 13:53     Методом половинного деления найти решение нелинейных уравнений
Посмотрите здесь:

Решение нелинейных и трансцендентных уравнений методом Рыбакова C++
Решение нелинейных уравнений. Метод половинного деления C++
Решение нелинейных уравнений методом итераций C++
Решение уравнения методом половинного деления C++
C++ Решение нелинейных уравнений методом простой итерации
C++ Решение уравнения методом половинного деления
C++ Решение уравнения методом половинного деления и методом итераций
Решение уравнения методом половинного деления C++

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
taras atavin
Ушёл с форума.
 Аватар для taras atavin
3569 / 1752 / 91
Регистрация: 24.11.2009
Сообщений: 27,619
10.11.2012, 18:44     Методом половинного деления найти решение нелинейных уравнений #2
Сообщение было отмечено автором темы, экспертом или модератором как ответ
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
29
30
31
32
33
34
35
typedef (double tfdd) (double);
double func(double x)
{
 return x*x*x+x*x-11.0;
}
double abs(double x)
{
 if (x<0.0)
 {
  return -x;
 }
 return x;
}
double bisec(double a, double b, double e , tfdd f)
{
 double ay;
 double by;
 double c;
 double cy;
 double d;
 c=(a+b)/2.0;
 d=b-a;
 if (abs(d)<abs(e))
 {
  return c;
 }
 ay=f(a);
 cy=f(c);
 by=f(b);
 if ((ay*cy)<=0.0)
 {
  return bisec(a, c, e, f);
 }
 return bisec(c, b, e, f);
}
Добавлено через 4 часа 40 минут
Извини, это ответ по теме "рекурсия". А это:
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
29
double bisec(double a, double b, double e , tfdd f)
{
 double ay;
 double by;
 double c;
 double cy;
 double d;
 while (true)
 {
  c=(a+b)/2.0;
  d=b-a;
  if (abs(d)<abs(e))
  {
   break;
  }
  ay=f(a);
  cy=f(c);
  by=f(b);
  if (ay*cy)<=0.0)
  {
   b=c;
  }
  else
  {
   a=c;
  }
 }
 return c;
}
по теме "циклы".
Yandex
Объявления
10.11.2012, 18:44     Методом половинного деления найти решение нелинейных уравнений
Ответ Создать тему
Опции темы

Текущее время: 03:04. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru