#include #include #include #include "diviseurs.h" #define NMAX (USHRT_MAX) static void usage(char * nom, int max); static void afficher_tableau(int tab[], int n); int main(int argc, char * argv[]) { int diviseurs[NMAX]; int i; if (argc < 2) usage(argv[0], NMAX); for (i = 1; i < argc; i++) { int n = atoi(argv[i]); int ndiviseurs; if (n > NMAX) usage(argv[0], NMAX); ndiviseurs = liste_diviseurs(n, diviseurs); afficher_tableau(diviseurs, ndiviseurs); } exit(EXIT_SUCCESS); } static void usage(char * nom, int max) { fprintf(stderr, "usage: %s n1 ... nk, ni <= %d\n", nom, max); exit(EXIT_FAILURE); } static void afficher_tableau(int tab[], int n) { int i; for (i = 0; i < n; i++) printf("%d ", tab[i]); printf("\n"); }