S.O.S Agorithme

Perdue_Algo -  
JooS Messages postés 2705 Statut Membre -
Bonsoir,
Je suis débutante en algorithme, c'est tout un nouveau monde pour moi.
Je vous prie de me conseiller des sites qui traitent des exercices corrigés pour débutants notemment en ce qui concerne les tableaux.

Pour cet exercice quelles sont les procédures que je pourrais suivre pour écrire un algorithme qui permet de:

-Déclarer un tableau T de N élèments, telle que la valeur de N ne dépasse pas 100.
-Transférer les élèments positifs de T dans un tableau TP et les élèments négatifs ou nuls de T dans un autre tableau TN, le premier des élèments classés par ordre décroissant et le second par ordre croissant.

Merci d'avance.

1 réponse

  1. JooS Messages postés 2705 Statut Membre 228
     
    Salut ...

    Personnellement, je connais pas un site pour l'algorithmique, mais il suffit de chercher sur Google ...

    Sinon, je connais un livre très sympa, "Algorithmique en C" ... tu trouvera pleins d'exemple (avec explications) traduits en langage C.

    Programme Tabs        
    
    Déclarations        
      Tableau T[100], TP[100], TN[100] : Entiers;   
      Variables i, j, min, max, var, cpt_p, cpt_n, taille : Entiers;        
    
    Début      
      Ecrire("Combien d'éléments y a t'il");        
      Lire(taille);        
    
      Ecrire("Veuillez entrer les éléments");        
    
      Pour i <- 0 à taille        
      Faire        
        Lire(T[i]);        
      Fin        
    
      cpt_p <- 0;        
      cpt_n <- 0;        
    
      Pour i <- 0 à taille        
      Faire        
        Si T[i] > 0 Alors        
        Début        
          TP[cpt_p] <- T[i];        
          cpt_p <- cpt_p + 1;        
        Fin        
    
        Sinon       
        Début        
          TN[cpt_n] <- T[i];        
          cpt_n <- cpt_n + 1;        
        Fin        
      Fin        
    
      Pour i <- 0 à (cpt_p+1)        
      Faire        
        max <- i;        
        Pour j <- (i+1) à (cpt_p+1)        
        Faire        
          Si TP[i] > TP[max] Alors        
            max <- j;        
          Fin        
        Fin        
        var <- TP[i];        
        TP[i] <- TP[max];        
        TP[max] <- var;        
      Fin        
    
      Pour i <- 0 à (cpt_n+1)        
      Faire        
        min <- i;        
        Pour j <- (i+1) à (cpt_n+1)        
        Faire        
          Si TN[i] < TN[min] Alors        
            min <- j;        
          Fin        
        Fin        
        var <- TN[i];        
        TN[i] <- TN[min];        
        TN[min] <- var;        
      Fin      
    Fin


    PS : ça aurais été mieux de trier le tableau T en premier, mais visuellement, ça aurait été moins facile a comprendre.

    Mettez en résolu quand c'est résolu -.- ...
    0