#include <stdio.h> void main () { float *allocate_real_vector(int, int); float **allocate_real_matrix(int, int, int, int); void free_real_vector(float *, int); void free_real_matrix(float **, int, int, int); int comeigval(float **, int, float [], float [], float []); int i,m; float **a,*re,*im,em[6]; re=allocate_real_vector(1,3); im=allocate_real_vector(1,3); a=allocate_real_matrix(1,3,1,3); em[0]=1.0e-6; em[2]=1.0e-5; em[4]=30.0; a[1][1] = 8.0; a[1][2] = -1.0; a[1][3] = -5.0; a[2][1] = -4.0; a[2][2] = 4.0; a[2][3] = -2.0; a[3][1] = 18.0; a[3][2] = -5.0; a[3][3] = -7.0; m=comeigval(a,3,em,re,im); printf("The number of not calculated eigenvalues: %3.0f\n\n" "The eigenvalues:\n",m); for (i=m+1; i<=3; i++) printf(" %12.6e %12.6e\n",re[i],im[i]); printf("\nEM[1] = %e\nEM[3] = %e\nEM[5] = %3.0f\n", em[1],em[3],em[5]); free_real_vector(re,1); free_real_vector(im,1); free_real_matrix(a,1,3,1); }