diff --git a/floating.c b/floating.c new file mode 100644 --- /dev/null +++ b/floating.c @@ -0,0 +1,38 @@ +/** + * $Id: floating.c,v 1.1.1.1 2008-04-28 17:32:53 mbroeker Exp $ + * $Source: /development/c/demos/floating.c,v $ + * + */ + +#include +#include +#include + +double *getValues (int elements) +{ + double *values; + int i; + + if ((values = calloc (elements + 1, sizeof (double))) == NULL) + return NULL; + for (i = elements; i >= 0; i--) + values[i] = cos (i); + return values; +} + +#define MAX 40 + +int main (int argc, char **argv) +{ + double *values = getValues (MAX); + int i; + + for (i = 0; i < MAX; i++) { + if (fabs (cos (i) - values[i]) < 0.001) + printf ("COS(%d) = %3.2g = %3.2g\n", i, values[i], cos (i)); + } + + if (values != NULL) + free (values); + return EXIT_SUCCESS; +}