#include <stdio.h>
#include <math.h>

double atof();
double pow();

main(argc, argv)
int argc;
char *argv[];
{
char tmp[200];
double withamt =0;
double interest = 0;
double fvalue = 0;
double numwiths = 0;

if ((argc == 2) && ((argv[1][0] == 'p') || (argv[1][0] == 'P')))
	{
	 fprintf(stdout,"Enter withdrawl amount <$>....................... ");
	 fgets(tmp,100,stdin);
	 withamt = atof(tmp);
	 fprintf(stdout,"Enter interest rate per compounding period....... ");
	 fgets(tmp,100,stdin);
	 interest = atof(tmp) / 100;
	 fprintf(stdout,"Enter number of withdrawls....................... ");
	 fgets(tmp,100,stdin);
	 numwiths = atof(tmp);
	 fprintf(stdout,"\n");
	}
else if ((argc == 2) && ((argv[1][0] == 'v') || (argv[1][0] == 'V')))
	{
	 fprintf(stdout,"pvoa: Version 1.00 \n");
	 fprintf(stdout,"      Copyright 1987 by Michael Brochstein\n");
	 fprintf(stdout,"      All rights reserved.\n");
	}
else if (argc != 4) 
	{
	 fprintf(stderr,"Usage: pvoa p \n");
	 fprintf(stderr,"       pvoa v \n");
	 fprintf(stderr,"       pvoa <withdrawl amount> <interest rate ");
	 fprintf(stderr,"per compounding period>\n");
	 fprintf(stderr,"            <number of withdrawls>\n");
	}
else if (argc == 4)
	{
	 withamt = atof(argv[1]);
	 interest = atof(argv[2]) / 100;
	 numwiths = atof(argv[3]);
	}

if ((argc == 4) 
	|| ((argc == 2) && ((argv[1][0] == 'p') || (argv[1][0] == 'P'))))
	{

	 fvalue = 1 / pow(1+interest,numwiths); 
	 fvalue = (1 - fvalue) / interest;
/*
	 fprintf(stdout,"Present value factor.... %14.4f\n",fvalue);
*/
	 fprintf(stdout,"Present value........... %14.2f\n",fvalue * withamt);
	}
}
