#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <math.h>
#include <corso.h>

main()
{
	int i,nDati;
	double x;
	double *xx;
	char *ptr;
	char buff[80],filename[80],risposta [120];
	FILE *hnd;
	
	printf("Scrivi il nome del file da leggere:\n");
	fgets(filename,80,stdin);
	if (ptr=strchr(filename,'\n')) ptr[0]=0;
	if ((hnd=fopen(filename,"r"))==NULL)
	{
		printf("Non riesco ad aprire il file %s!!!\n\n",filename);
		exit(0);
	}
	// .................................................... conta i dati
	nDati=0;
	for (;;)
	{
		fgets(risposta,80,hnd);
		if (feof(hnd)) break;
		fieldcpy(buff,risposta,0);
		if (buff[0]==0) continue;
		nDati++;
	}
	printf("Nel file ci sono %d dati\n",nDati);
	rewind(hnd);
	// ................................... riserva la memoria per i dati
	xx=new double [nDati];
	// .................................................... leggi i dati
	i=0;
	for (;;)
	{
		fgets(risposta,80,hnd);
		if (feof(hnd)) break;
		fieldcpy(buff,risposta,0);
		if (buff[0]==0) continue;
		xx[i]=atof(buff);
		i++;
	}
	fclose(hnd);
	// ................................................... scrivi i dati
	printf("Ecco i tuoi dati:\n");
	for (i=0;i<nDati;i++) printf("%15.5lf %15.5lf\n",xx[i],sqrt(xx[i]));
}
