Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <iostream>
- #include <cstdio>
- using namespace std;
- const double EPS = 0.0001; // задаем точность поиска
- const double a = -100; // задаем левую границу отрезка поиска
- const double b = 100; // задаем правую границу отрезка поиска
- double function(double x)
- {
- return -x * x * x * x / 3.0; // какая-то функция, у нас будет -x ^ 4 / 3;
- }
- double search() // будем искать максимум
- {
- double l = a;
- double r = b;
- while (r - l > EPS)
- {
- double m1 = l + (r - l) / 3;
- double m2 = r - (r - l) / 3;
- if (function(m1) < function(m2))
- l = m1;
- else
- r = m2;
- }
- return r;
- }
- int main()
- {
- printf("%.6f",search());
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement