Автор Николай задал вопрос в разделе Другие языки и технологии
метод хорд в с++ и получил лучший ответ
Ответ от Вильям Иванцев[гуру]
//hord.h
double findRoot(double (*f)(double), double a=1.5, double b=2., double eps=1e-6)
//hord.cpp
#include "hord.h"
double findRoot(double (*f)(double), double a=1.5, double b=2., double eps=1e-6) {
double t;
while (fabs(b-a)>=eps)
{
//1 t =( b*f(a)-f(b)*a)/(f(a)-f(b));
t = a+(f(b)*(b-a))/(f(b)-f(a)); //2
if (f(a)*f(t)<0)
{
b=t;
//p cout << "b=" << b;
}
else if (f(t)*f(b)<0)
{
a=t;
//p cout << "a=" << a;
} else
return t;
}
return t;
}
//main.cpp
#include "hord.h"
#include <iostream>
using namespace std;
double f( double x )
{
return x*x*x*x+6*x*x-12*x-8;
}
int main() {
double t = findRoot( f );
cout << "x=" << t << " f(x)=" << f(t) << endl;
return 0;
}
Источник: А зачем там cmath, для меня осталось загадкой.
Делай один файл hord.cpp и всё, зачем остальные?
Вопрос про четыре точки.(внутри)
эти 4 точки образуют 4-угольник, а окружность можно описать около такого 4-уг-ка, если выполняется
подробнее...