S.O.S Agorithme

Perdue_Algo -  
JooS Messages postés 2468 Date d'inscription   Statut Membre Dernière intervention   -
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

JooS Messages postés 2468 Date d'inscription   Statut Membre Dernière intervention   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