/* a program that demonstrates the use of C pointers */

/* compile with gcc -g -Wall pointer-first.c -o pointer-first -lm */

#include <stdio.h>
#include <math.h>

double f(double x);
void g(double x, double *res_1_p, double *res_2_p);

int main()
{
  double x;
  double result_f, result_g_1, result_g_2;
  x = 2.7;
  result_f = f(x);
  g(x, &result_g_1, &result_g_2);

  printf("results are %f    %f  %f\n",
	 result_f, result_g_1, result_g_2);
  return 0;
}

double f(double x)
{
  return x * 7.9;
}

void g(double x, double *res_1_p, double *res_2_p)
{
  *res_1_p = x * 8.1;
  *res_2_p = cos(x * 11.3);
}

