#include #include #include #include double fact(int n) { int i; double res=1; for(i=2;i<=n;i++) res*=i; return res; } double C(int n,int k) { return fact(n)/(fact(k)*fact(n-k)); } double B(int k,int n,double u) { return C(n,k)*pow(u,k)*pow(1-u,n-k); } int main() { int n=3,k; int x[50]={100,200,300,400},y[50]={100,200,300,100}; int gd=DETECT,gm; double u,t,tx,ty; scanf("%d",&n); n--; for(int i=0;i<=n;i++) scanf("%d%d",&x[i],&y[i]); initgraph(&gd,&gm,"c:\\tcpp30\\bgi"); for(u=0.001;u<=1.0;u+=0.001) { tx=ty=0.0; for(k=0;k<=n;k++) { t=B(k,n,u); tx+=x[k]*t; ty+=y[k]*t; } putpixel(tx,ty,WHITE); } getch(); return 0; }