Files correlati : Ricompilazione Demo : [ ] Commento : Aggiunti i sorgenti per Greenleaf Math Library (gfm.dll) git-svn-id: svn://10.65.10.50/trunk@10079 c028cbd2-c16b-5b4b-a496-9718f37d4682
		
			
				
	
	
		
			66 lines
		
	
	
		
			1.2 KiB
		
	
	
	
		
			C
		
	
	
		
			Executable File
		
	
	
	
	
			
		
		
	
	
			66 lines
		
	
	
		
			1.2 KiB
		
	
	
	
		
			C
		
	
	
		
			Executable File
		
	
	
	
	
#include <stdio.h>
 | 
						|
#include "gm.h"
 | 
						|
void	getdec(char *,DEC *);
 | 
						|
void main(void);
 | 
						|
 | 
						|
void	main()
 | 
						|
{
 | 
						|
	int	choice, opt, nper=0, diy=365;
 | 
						|
	DECP	pv, intr, intamt;
 | 
						|
	DEC	*p;
 | 
						|
	
 | 
						|
	printf("Simple interest computation\n");
 | 
						|
	printf("Variable to solve for --\n");
 | 
						|
	printf("  1)  Number of days\n  2)  Interest rate\n");
 | 
						|
	printf("  3)  Principal\n  4)  Accrued interest\n");
 | 
						|
	printf("Your choice:  ");
 | 
						|
	scanf("%d", &choice);
 | 
						|
	if (choice == 1)
 | 
						|
		opt = GM_N;
 | 
						|
	if (choice == 2)
 | 
						|
		opt = GM_I;
 | 
						|
	if (choice == 3)
 | 
						|
		opt = GM_PV;
 | 
						|
	if (choice == 4)
 | 
						|
		opt = GM_INTR;
 | 
						|
	
 | 
						|
	if (opt != GM_N)  {
 | 
						|
		printf("Number of days:  ");
 | 
						|
		scanf("%d", &nper);
 | 
						|
	}
 | 
						|
	if (opt != GM_I)
 | 
						|
		getdec("Percentage annual interest rate:  ", intr);
 | 
						|
	if (opt != GM_PV)
 | 
						|
		getdec("Principal:  ", pv);
 | 
						|
	if (opt != GM_INTR)
 | 
						|
		getdec("Accrued interest:  ", intamt);
 | 
						|
	dprintf("Number of days in year (360 or 365):  ");
 | 
						|
	dscanf("%d", &diy);
 | 
						|
 | 
						|
	if (diy == 360)
 | 
						|
		p = simp360(&nper, intr, pv, intamt, opt);
 | 
						|
	else
 | 
						|
		p = simp365(&nper, intr, pv, intamt, opt);
 | 
						|
	
 | 
						|
	if (opt==GM_N)
 | 
						|
		dprintf("The result is %d\n",nper);
 | 
						|
	else  {
 | 
						|
		if (p)
 | 
						|
			dprintf("The result is %v\n",p);
 | 
						|
		else
 | 
						|
			dprintf("Simple interest failed\n");
 | 
						|
	}
 | 
						|
}
 | 
						|
 | 
						|
void	getdec(str, x)
 | 
						|
char	*str;
 | 
						|
DEC	*x;
 | 
						|
{
 | 
						|
	int	i;
 | 
						|
	
 | 
						|
	do  {
 | 
						|
		printf("%s", str);
 | 
						|
		i = dscanf("%t", x);
 | 
						|
	} while (i<1);
 | 
						|
}
 |