aide scolaire
Vous souhaitez réagir à ce message ? Créez un compte en quelques clics ou connectez-vous pour continuer.

tri moitié tableau

Aller en bas

tri moitié tableau Empty tri moitié tableau

Message  Admin Dim 13 Mar - 16:26

ENONCE

Ecrire un programme qui permet de :
• Remplir obligatoirement un tableau T par 6 entiers pairs et 6 entiers impairs
• Trier dans l'ordre décroissant le tableau T dans le but d'accumuler les entiers pairs de T dans sa première moitié et les entiers impairs de T dans sa deuxième moitié.
• Afficher les éléments du tableau T après leur tri
Exemple: pour le tableau t suivant:
6 9 3 2 5 8 7 4 1 0 2 5
Le programme affichera:

8 6 4 2 2 0 9 7 5 5 3 1

PASCAL
program tri_moitie;
uses wincrt;
const
n=12;
type
tab=array[1..n] of integer;
var
t:tab;
procedure saisie (var t:tab);
var
a,m,p,i,f:integer;
begin
m:=0; p:=0;i:=0;f:=13;
repeat
write('saisir un nombre : ');
readln(a);
if (a mod 2 =0) then if (p <6) then
begin
p:=p+1;
i:=i+1;
writeln('element pair n° ',p);
t[i]:=a;
end
else
writeln('il y a dépassement du nombre d''element paires: saisir un élément impair')
else if m <6 then
begin
m:=m+1;
f:=f-1;
writeln('element impair n° ',m);
t[f]:=a;
end
else
writeln('il y a dépassement du nombre d''element impaires: saisir un élément pair');
until (m=6) and (p=6);
end;

procedure tri (var t:tab;i,n:integer);
var
j,j1,aux:integer;
begin
for j:=i to n-1 do
for j1:= j+1 to n do

if t[j] < t[j1] then
begin
aux:= t[j]; t[j]:= t[j1];
t[j1]:=aux;
end;
end;
procedure affichage (t:tab);
var
i:integer;
begin
writeln('***affichage des éléments du tableau T après TRI**************');
for i:=1 to n do writeln(t[i]);
end;
begin
saisie(t);
tri (t,1,6);
tri ( t,7,12);
affichage (t);

end.





Admin
Admin

Messages : 137
Date d'inscription : 29/12/2010

https://aidescolaire.yoo7.com

Revenir en haut Aller en bas

Revenir en haut

- Sujets similaires

 
Permission de ce forum:
Vous ne pouvez pas répondre aux sujets dans ce forum