Skip to content
Snippets Groups Projects
main.c 1.61 KiB
Newer Older
/**
 *@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
*/
        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