hg S’enregistrer Bac Tunisie Algorithmique et programmation : BAC INFORMATIQUE En Tunisie forum informatique Tunisie

Bac Tunisie Algorithmique et programmation : BAC INFORMATIQUE En Tunisie  forum informatique Tunisie Index du Forum

hg Bac Tunisie Algorithmique et programmation TIC réseaux php javascript sql access activités programmation c
hg
FAQ FAQ Rechercher Rechercher Membres Membres Groupes Groupes Profil Profil Se connecter pour vérifier ses messages privés Messages Privés Connexion Connexion


 Forum de l'excellence et l'excellence en innovation 
Pour participer à notre Forum, vous devez
 
inscrire sur notre forum a partir d'ici
 
  NB :
Les membres ''zéro messages'' seront supprimés automatiquement après un nombre de jours donné !!!!
             
   
 
  
forum d'aide informatique : internet, réseau, programmation informatique ...
s v p corriger mon ex1 de la tri shell par principe recursiv
 
 
Poster un nouveau sujet   Répondre au sujet    Bac Tunisie Algorithmique et programmation : BAC INFORMATIQUE En Tunisie forum informatique Tunisie Index du Forum -> Algorithmique & programmation -> Récursivité
hg Sujet précédent :: Sujet suivant   hd
Auteur Message
myaset


Hors ligne

Inscrit le: 24 Jan 2009
Messages: 4
Masculin
Point(s): 21
Moyenne de points: 0

Posté le: Lun 23 Nov - 19:20 (2009)    Sujet du message: s v p corriger mon ex1 de la tri shell par principe recursiv Répondre en citant

PublicitéSupprimer les publicités ?


:besmellah1:
bonjour

je fais  un programme qui remplir un tableau t par n entier et le trier par la méthode tri_shell par le principe de récursivité
mais elle sa marche mais je trouve quelque faute ne le conner svp
corriger cette programme



program younes;
uses wincrt;
type tab=array[1..100]of integer;
var t:tab;
    p,n:integer;
procedure saisie(var n:integer);
begin;
repeat
writeln('entrer le nombre de case:');
readln(n);
until n>2;
end;
procedure remplir(var t:tab;n:integer);
var i:integer;
 begin
 for i := 1 to n do
 begin
 writeln('entrer la case n°',i,'de tableau');
 readln (t[i]);
 end;
 end;
procedure tri_insertion(var t:tab;n:integer);
var i,p,aux :integer;
begin
for i:= 2 to n do;
begin
if t[i-1]<t[i] then begin
               aux:=t[i];
               p:= i-1;
                   while(t[p]<aux) and (p>=1) do
                   begin
                    t[p+1]:=t[p];
                    p:=p-1;
                    end;
                    t[p+1]:=aux;
                     end;
end;

 end;

procedure tri_shell_rec(var t:tab;var p:integer;n:integer);
var  i,x,j,aux:integer;
begin
if p=0 then tri_insertion(t,n)
  else begin
      x:=1;
      for i := 1 to p do
          begin
      x:=x+p;
      while(x<n) do
      begin
      aux:=t[x];
      j:=x-p;
      while(t[j]>aux) and (j>=i) do
      begin
      t[j+p]:=t[j];
      j:=j-p;
      end;
      t[j+p]:=aux;
      x:=x+p;
      end;
      end;
      p:=p div 3;
      tri_shell_rec(t,p,n);
      end;
         

end;
procedure affiche(t:tab; n:integer);
var i:integer;
begin
for i:= 1 to n do
begin
readln(t[i]);
end;
end;
begin;
saisie(n);
remplir(t,n);
p:=(n-1) div 3 ;
tri_shell_rec(t,n,p);
affiche(t,n);
end.




 
 


 
Revenir en haut
Contenu Sponsorisé






Posté le: Aujourd’hui à 05:07 (2016)    Sujet du message: s v p corriger mon ex1 de la tri shell par principe recursiv

 
Revenir en haut
Montrer les messages depuis:   
bg bd
Poster un nouveau sujet   Répondre au sujet    Bac Tunisie Algorithmique et programmation : BAC INFORMATIQUE En Tunisie forum informatique Tunisie Index du Forum -> Algorithmique & programmation -> Récursivité Toutes les heures sont au format GMT + 1 Heure
 
Page 1 sur 1

 
Sauter vers:  
Index | créer forum gratuit | Forum gratuit d’entraide | Annuaire des forums gratuits | Signaler une violation | Conditions générales d'utilisation