#include void prod_list_in_c(double *X, double *Y, double *Z, int *ROW, int *Xcol, int *Ycol){ int j, k, l; for(j=0; j<(*Ycol); j++){ for(l=0; l<(*Xcol); l++){ for(k=0; k<(*ROW); k++){ *(Z + j*((*ROW)*(*Xcol)) + l*(*ROW)+k) = (*(X + (*ROW)*l + k)) + (*(Y+ (*ROW)*j + k)); } } } } void prod_mat_c(double *v1, int *l1, double *v2, int *l2, double *v){ int i,j; for(i=0; i<*l2; i++){ for(j=0; j<*l1; j++){ *(v+i*(*l2)+j)=(*(v1+j))*(*(v2+i)); } } } void sum_c(double *a, double *b, double *c, int *l){ int i; for(i=0; i<*l; i++){ *(c+i) = *(a+i) + *(b+i); } } void power_order_c(double *M, int *max_power, int *dimen, double *ans){ int i, j, k; int v[*dimen]; for(i=0; i<*dimen; i++){ v[i] = pow(*max_power, i); } for(j=0; j<*(dimen+1); j++){ for(k=0; k<*(dimen); k++){ *(ans+j) += v[k] * (*(M+j*(*dimen)+k)); } } }