campo-sirio/gfm/demo07.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

57 lines
1.1 KiB
C
Executable File

#include <stdio.h>
#include "gm.h"
void printres(char *,DEC *);
void main(void);
void main()
{
DECP x, y, z;
DEC *p;
char s[40];
do {
printf(" First number (x) : ");
scanf("%s", s);
p = ConvAsciiToDecimal(x, s);
} while (!p);
do {
printf("Second number (y) : ");
scanf("%s", s);
p = ConvAsciiToDecimal(y, s);
} while (!p);
printres("x = ", x);
printres("y = ", y);
p = AddDecimal(z, x, y);
printres("x + y = ", p);
p = SubtractDecimal(z, x, y);
printres("x - y = ", p);
p = MultiplyDecimal(z, x, y);
printres("x * y = ", p);
p = DivideDecimal(z, x, y);
printres("x / y = ", p);
p = MultiplyDecimalAndRound(z, x, y, 2);
printres("x * y (rounded) = ", p);
p = MultiplyDecimalAndTruncate(z, x, y, 2);
printres("x * y (truncated) = ", p);
p = DivideDecimalAndRound(z, x, y, 2);
printres("x / y (rounded) = ", p);
p = DivideDecimalAndTruncate(z, x, y, 2);
printres("x / y (truncated) = ", p);
}
void printres(str, pd)
char *str;
DEC *pd;
{
char sd[22];
printf("%20s", str);
if (pd) {
ConvDecimalToAscii(sd, pd);
printf("%s\n", sd);
}
else
printf("undefined\n");
}