//  Calculation Program for displaying four egg curves. (egg shaped curve V), 05 (Thurs.) Nov., 2009
// file name: egg5a2.c
#include< stdio.h>
#include< math.h>
void main(void)
{
	double x,y,a,b,c,db,bmax,bmin,pai;
	double t,dt;
	int i,imax,n,nmax;
	double xx[10001],yy[10][10001];// Take care of the upper limit of storage memory capacitance.
	FILE *fp;
// Setting of the constants
	pai=3.1415927;
    a=1;
	bmax=0.9;
	bmin=0.3;
	c=0.1;
	db=0.2;
	printf("a=%f\n\n",a);
	 
// Setting of the other parameter
	dt=pai/1000;// plotting interval of the phase angle
// execution of calculation
	i=0;
	for(t=-2*pai;t<=2*pai;t=t+dt)
	{
		i++;
		n=0;
		for(b=bmin;b<=bmax+db/100;b=b+db)
		{
			n++;
			x=a*cos(t);
	    	y=(b+c*cos(t))*sin(t);
			yy[n][i]=y;
			xx[i]=x;
			printf("i=%d,x=%f,y=%f\n",i,x,y);
		}
	}
	imax=i;
	nmax=n;
// writing the calculated coordinates data of the curve into a textfile
	fp=fopen("egg-shaped curve.txt","w");
	if(fp==NULL)
		{
		printf("FILE OPEN ERROR\n");
		}
	else
		{
		for(i=1;i<=imax;i++)
			{
			fprintf(fp,"%f,%f,%f,%f,%f\n",xx[i],yy[1][i],yy[2][i],yy[3][i],yy[4][i]);
			}
		fflush(fp);
		fclose(fp);
		}
	printf("end\n");
}// the end of the program
RETURN