Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <iostream>
- #include <math.h>
- using namespace std;
- double fun(double x); // Заданная функция
- double min(double start, double end, double epsil, double &x, double (*f)(double)); // Функция поиска минимального значения
- int main()
- {
- double start, end, epsil, x, result; // Объявляем нужные переменные
- cout << "Please, enter start, end: ";
- cin >> start >> end; // Просим ввести границы поиска (начало и конец)
- cout << "Please, enter epsil: ";
- cin >> epsil; // Вводим шаг поиска
- result = min(start, end, epsil, x, fun); // Передаем переменные в функцию
- cout << "F min (" << x << ") = " << result << endl; // Выводим в формате F(x) = y
- return 0;
- }
- double fun(double x)
- {
- return pow(x-0.217, 2) - 0.719; // Функция из задания
- }
- double min(double start, double end, double epsil, double &x, double (*f)(double))
- {
- double m = f(start); // Задаем начальные значения
- x = start;
- for (double tmpx = start; tmpx <= end; tmpx += epsil)
- {
- // Ищем y в данной точке
- double y = f(tmpx);
- if (y<m)
- // сравниваем с минимальным
- {
- m = y; // Меняем значения
- x = tmpx;
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement