moitié tp 3
This commit is contained in:
31
prepa_CM3/ex2_B.c
Normal file
31
prepa_CM3/ex2_B.c
Normal file
@@ -0,0 +1,31 @@
|
||||
#include <stdio.h>
|
||||
|
||||
double recursiveSum(const double array[], int size) {
|
||||
/* Cas de base : tableau de taille 1*/
|
||||
if (size == 1) {
|
||||
return array[0];
|
||||
}
|
||||
|
||||
/* Appel récursif : somme du premier élément et du reste du tableau*/
|
||||
return array[0] + recursiveSum(array + 1, size - 1);
|
||||
}
|
||||
|
||||
int main() {
|
||||
/* Test 1 : tableau de 5 éléments*/
|
||||
double array1[] = {1.5, 2.5, 3.5, 4.5, 5.5};
|
||||
double array2[1] = {10.0};
|
||||
double array3[4] = {2.0, 4.0, 6.0, 8.0};
|
||||
int size1 = sizeof(array1) / sizeof(array1[0]);
|
||||
int size2, size3;
|
||||
printf("Somme du tableau 1 : %.2f\n", recursiveSum(array1, size1));
|
||||
|
||||
/* Test 2 : tableau de 1 élément*/
|
||||
size2 = sizeof(array2) / sizeof(array2[0]);
|
||||
printf("Somme du tableau 2 : %.2f\n", recursiveSum(array2, size2));
|
||||
|
||||
/* Test 3 : tableau de 4 éléments, mais considéré de taille 3*/
|
||||
size3 = 3;
|
||||
printf("Somme du tableau 3 : %.2f\n", recursiveSum(array3, size3));
|
||||
|
||||
return 0;
|
||||
}
|
||||
Reference in New Issue
Block a user