#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);
	void eigsym1(float [], int, int, float [], float **, float []);
	int i,j;
	float a[11],val[3],em[10],**vec;

	vec=allocate_real_matrix(1,4,1,2);
	em[0]=1.0e-6;	em[2]=1.0e-5;	em[4]=1.0e-3;
	em[6]=1.0e-5;	em[8]=5.0;
	for (i=1; i<=4; i++)
		for (j=i; j<=4; j++) a[(j*j-j)/2+i]=1.0/(i+j-1);
	eigsym1(a,4,2,val,vec,em);
	printf("The eigenvalues:\n  %12.5e   %12.5e\n\nThe eigenvectors:\n"
			"  %12.5e   %12.5e\n  %12.5e   %12.5e\n  %12.5e   %12.5e\n"
			"  %12.5e   %12.5e\n\nEM[1] = %e\n"
			"EM[7] = %e\nEM[3] =%3.0f\nEM[5] =%3.0f\nEM[9] =%3.0f\n",
			val[1],val[2],vec[1][1],vec[1][2],vec[2][1],vec[2][2],
			vec[3][1],vec[3][2],vec[4][1],vec[4][2],
			em[1],em[7],em[3],em[5],em[9]);
	free_real_matrix(vec,1,4,1);
}