Files
DEV/DEV.1.1/CM3TEST/cm3.2.c
Emmanuel Srivastava 0ccdf8d974 update
2025-01-21 12:41:42 +01:00

38 lines
864 B
C

#include <stdio.h>
#include <stdlib.h>
/* Fonction récursive pour trouver le maximum */
int trouver_maximum(int n, int valeurs[]) {
if (n == 1) {
return valeurs[0];
}
int max_suivant = trouver_maximum(n - 1, valeurs + 1);
return (valeurs[0] > max_suivant) ? valeurs[0] : max_suivant;
}
int main(int argc, char *argv[]) {
int i, n;
int *valeurs;
if (argc < 2) {
fprintf(stderr, "Usage: %s nombre1 nombre2 ...\n", argv[0]);
return EXIT_FAILURE;
}
n = argc - 1;
valeurs = (int*)malloc(n * sizeof(int));
if (valeurs == NULL) {
fprintf(stderr, "Erreur d'allocation mémoire\n");
return EXIT_FAILURE;
}
for (i = 0; i < n; i++) {
valeurs[i] = atoi(argv[i + 1]);
}
printf("%d\n", trouver_maximum(n, valeurs));
free(valeurs);
return EXIT_SUCCESS;
}