Очень просто: добавляете второй аргумент в параметры через запятую. { return 2*(pow(e,-x))-(pow(x-2,2)); } long double Fp1(long double x, long double e) { return -2*x-2*(pow(e,-x))+4; } long double Fp2(long double x, long double e) { return 2*(pow(e,-x))-2; } }//код чуток оптимизировал, убрал лишние строки. long double F(long double x, long double e) А в самой функции уже вызывать вот так: long double m_hord(long double left,long double right) { long double epsilon=0,001//погрешность long double h = epsilon/10; //шаг for(long double x=left; x{ long double y = F(x, epsilon); //вызов самой функции //... } //... } Откуда цифра 2,72? Это же погрешность вычисления. Она должна быть всяко меньше 1