/* Exercice V, feuille d'exercices 1 */
#include <stdio.h>
#define alloc(a) ((a*)malloc(sizeof(a)))
#define alloctab(a,n) ((a*)malloc((n)*sizeof(a)))
int GetPoints ( int * NumberOfPoints_Ptr ,
double ** ListOfPoints_PPtr )
{
int i;
printf("Donner le nombre de points : ");
scanf("%d",NumberOfPoints_Ptr);
/* The number of points is known, allocate the array accordingly */
*ListOfPoints_PPtr = alloctab(double,*NumberOfPoints_Ptr);
for (i=1 ; i<=*NumberOfPoints_Ptr ; i++)
{
printf("Donner la valeur du point %d : ",i);
scanf("%lf",&((*ListOfPoints_PPtr)[i-1]));
}
printf("%d points enregistres\n",*NumberOfPoints_Ptr);
}
double SumPoints ( int NumberOfPoints ,
double * ListOfPoints_Ptr )
{
int i;
double s;
s=0.0;
for (i=1 ; i<=NumberOfPoints ; i++)
s=s+ListOfPoints_Ptr[i-1];
return s;
}
int main()
{
int NumberOfPoints;
double * ListOfPoints;
GetPoints(&NumberOfPoints,&ListOfPoints);
printf("La somme de ces points est %f\n",SumPoints(NumberOfPoints,ListOfPoints));
}