diff --git a/DEV1.1/TP15:ListesChainees/maximum.c b/DEV1.1/TP15:ListesChainees/maximum.c new file mode 100644 index 0000000..52b210a --- /dev/null +++ b/DEV1.1/TP15:ListesChainees/maximum.c @@ -0,0 +1,61 @@ +#include +#include +#include + +struct maillon { + unsigned short valeur; + struct maillon* suiv; +}; + +typedef struct maillon maillon; + + +maillon* ajouteDebut(maillon *chaine, unsigned short entier){ + maillon *nouveauMaillon=malloc(sizeof(maillon)); + nouveauMaillon->valeur=entier; + nouveauMaillon->suiv=chaine; + return nouveauMaillon; + free(nouveauMaillon); +} + +void afficheListe(maillon *chaine){ + maillon *affichage=malloc(sizeof(maillon)); + affichage=chaine; + while(affichage->suiv!=NULL){ + printf("%hu ",affichage->valeur); + affichage=affichage->suiv; + } free(affichage); +} + +int maximum(maillon *chaine){ + maillon *chercheMax=malloc(sizeof(maillon)); + int max=0; + chercheMax=chaine; + while(chercheMax->suiv!=NULL){ + if (maxvaleur){ + max=chercheMax->valeur; + } + chercheMax=chercheMax->suiv; + } free(chercheMax); + return max; +} + +int main() { + int i; + int maxi; + maillon *liste=malloc(sizeof(maillon)); + srand(time(NULL)); + + putchar('\n'); + liste->valeur=(rand()%889)+111; + liste->suiv=NULL; + for(i=0;i<10;i++){ + unsigned short v=(rand()%889)+111; + liste=ajouteDebut(liste, v); + } printf("Les valeurs de la liste sont :\n"); + afficheListe(liste); + putchar('\n'); + maxi=maximum(liste); + printf("\nLa valeur maximum de la liste est : %hu\n\n",maxi); +return 0; +} \ No newline at end of file