#include <iostream>
using namespace std;
int sum(int a,int b){
return a+b;
}
void xswap(int *a,int *b){
int t = *a;
*a = *b;
*b = t;
}
int main(void){
int a,b,c,(*p1)(int,int);
void (*p2)(int *,int *);
cout << "XXXXXXX";
cin >> a >> b;
p1 = sum;
c = p1(a,b);
p2 = xswap;
p2(&a,&b);
cout << c << endl;
cout<<"a="<<a<<"b="<<b<<endl;
return 0;
}
#include <iostream>
#include <iomanip>
#include <cmath>
using namespace std;
double f1(double x){
return x*x*x-6.0*x-1.0;
}
/*
double root(double (*f)(double),double begin,double end){
double left = f(begin);
double point = (begin + end)/2.0;
double mid = f(point);
if(fabs(mid) > 10e-8){
if(left * mid > 0){
point = root(f,point,end);
}else{
point = root(f,begin,point);
}
}else{
return point;
}
}
*/
double root(double (*f)(double),double begin,double end){
double left = f(begin);
double point = (begin + end)/2.0;
double right = f(end);
double mid = f(point);
while(fabs(mid) > 10e-8){
point = (begin + end)/2.0;
mid = f(point);
if(left * mid > 0){
begin = point;
}else{
end = point;
}
}
return point;
}