// Creates Simplex #include #include double **simplex(int n,double *a,double *da) { int i,j; double **p; // Allocate pointers to rows p=(double **) malloc(sizeof(double *) * (n+1)); // Allocate rows and set pointers for (i=0;i<=n;i++) p[i]=(double *) malloc(sizeof(double) * (n+1)*n); // Fill simplex for (i=0;i<=n;i++) { for (j=0;jj) p[i][j]=a[j]-da[j]; } } return p; } void simplex_free(double **p,int n) { int i; if(p==NULL) return; for(i=0;i<=n;i++) free(p[i]); free(p); }