/** *@file main.c *@brief Programme principale pour trier un tableau dynamique 1D (une dimension) *@details Ce programme créer un tableau, le remplit avec des valeurs aléatoires, le trie, puis affiche le tableau trié *@author Pradheep U. *@date 20/03/2024 *@version 2.0 *@copyright Copyright 2024 Pradheep U. */ #include "tableau.h" #include "alea.h" #include "remplir.h" #include "io.h" #include "tri.h" tableau t; //Déclaraition d'un tableau dynamique /** * @fn int main(argc, char **argv) * @brief Fonction principale * @param argc Nombre d'arguments de ligne de commande * @param argv Tableau des arguements de ligne de commande * @return 0 en cas de succès, 1 en cas d'échec * @details Verifie le nombre d'arguments et procéde au remplissage, au tri et à l'affichage du tableau */ int main(int argc, char **argv) { if (argc < 3) { printf("usage : main <nb elems> <max val>\n"); //la valeur maximale que peut prendre une valeur return 1; } t.taille = atoi(argv[1]); // lecture du 1er argument int m = atoi(argv[2]); // lecture du 2eme argument t.valeur = NULL; // initialisation du pointeur t.valeur = (int *)malloc(t.taille * sizeof(int)); // allocation du tableau if(t.valeur == NULL) { fprintf(stderr, "Erreur d'allocation de la mémoire\n"); exit(EXIT_FAILURE); } remplir(m); // remplissage aléatoire du tableau printf("tableau non trié :\n"); affiche(); trier(); printf("tableau trié :\n"); affiche(); free(t.valeur); //libération de la mémoire return 0; }