campo-sirio/gfm/demo16.c
alex ba237a9d91 Patch level : no patch
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
2002-02-26 12:19:02 +00:00

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);
}