Найти значение минимума функции на заданном интервале (дихотомия) - C (СИ)
Формулировка задачи:
Разработать программу, находящую значение минимума значения функции на заданном интервале. Метод дихотомии.
Библиотеки, реализующие функции в явном виде использовать запрещается.
Естесна код не работает как надо, куда рыть, чтобы сделать задание?#include <stdio.h>
int main() {
double a,b,f,f1,f2,e,x,x1,x2;
double f(double x)
{
return f = x*x*4+x*2;
}
printf("%s", "Введите точку a, начало интервала: ");
scanf("%lf", &a); /* число 1 в интервале */
printf("%s", "Введите точку b, конец интервала: "); /* число 2 в интервале */
scanf("%lf", &b);
printf("%s", "Введите точность, с которой хотите найти минимум: "); /* точность */
scanf("%lf", &e);
do {
x=(a+b)/2;
f1 = f * (x - e);
f2 = f * (x + e);
if (f1<f2)
b=x1;
else
a=x2;
}
while (b-a>e);
printf("результат = %lf \n", a);
printf("результат = %lf \n", b);
}Решение задачи: «Найти значение минимума функции на заданном интервале (дихотомия)»
textual
Листинг программы
return x*x*4+x*2;