Vous êtes sur la page 1sur 12

1

République Algrienne Dimocratique


et  Populaire
Ministére de l'enseignement supérieur et de la
recherche scientifique
Université de Ghardaia
Département de math informatique

RAPPORT
DE MINI PROJET

preparation: professeur
 bouzid nour el houda ben abderahman
 fiha khir safa

2017/2018

[1]
2

Introduction ::: 

Le mini projet est une programme pascal définit un


problem est analyser par se dernier alors se
broblem defenit un employé par son information et
saisi l’employés et le recherche d’un employé et le
calcule qui son celebataire et le classement .

Problématique
Dans cette action on parlee de problematique d’un
se programme on utilisée un sous programme
(fonction ,procedure) et des types enregistrement
et tableau pour saisie les employés et pour le
resultats de se programme et saisie d’un
employés et le recherche de se drenier par son
matricule ou par son grad et le calcul du nombre
d’employer ayant la situation si il est marie ou
celebataire ou de tous les employés par orgre
decroissant selon le grade .

[2]
3

tableau

Analyse
Program

Type enregistrement

tableau

Procedure
lecteur Saisi d’un employes

tableau d'un employes


function calcul
Calcul d’un nombre de
employes celebataire

matricul
fonction nom

nom de employe

[3]
4

tableau de employes

procedure
tri tri selon le grad

end.

Algorithme 

Algorithme minipro
constante n=10
type date = enregistrement
J: 1..31
M : 1..12
A: 1980..1997
fin
type Empl=enregistremet
nom ,prenom:chaine[20]
situation ,deplome :chaine
nbenf,matricul :entier

[4]
5

grad:1..3
datenais:date
fin;
tab=tableau[1..n]de empl
variable i : entier
t:tab
k : chaine
procedure lecteur( t:tab)//*se procedure il faire
saisie d’un employes on utilisé le type enregestrement*//

fonction calcul(t1:tab)//*cette fonction pour faire le


calcul d’un employes celebataire*//

fonction nom (t2:tab) //*cette fonction pour


recherche d'un employe par son matricul*//

procedure tri(var ta:tab) //*se procedure il veut tri


les employes selon le grad decroissent*//
debut /*debut de algorithem*/
lecteur(t);
x:=calcul(t);
m:=nom(t);
ecrire('nb celebataire=',x);
ecrire('matricul=',m);
[5]
6

tri(t);
fin. /*fin de algorithem*/

programme

program mini;
const n=100;
Type date=record
J:1..31;
M:1..12;
A:1900..2000;
end;
type Empl=record
nom:string[20];
prenom:string[20];
situation,deplome:string;
nbenf,matricul:integer;
grad:integer;
date_nais:date;
end;
[6]
7

tab=array[1..n]of empl;
var m:string;
t:tab;
i,x,matr:integer;
procedure lecteur(var t:tab);
var i:integer;
begin
for i:=1 to n do
begin
write('le nom de l"emplose',i,':');
readln(t[i].nom);
write('le prenon de l"emplose',i,':');
readln(t[i].prenom);
write('le matricule de l"emplose',i,':');
readln(t[i].matricul);
write('le date de naissaunce de l"emplose',i,':');
write('jour');
readln(t[i].date_nais.J);
write('mais');
readln(t[i].date_nais.M);
[7]
8

write('Annee');
readln(t[i].date_nais.A);
write('le diplome de l"emplose',i,':');
readln(t[i].deplome);
write('la grad de l"emplose',i,':');
readln(t[i].grad);
write('situation familiale de l"emplose',i,':');
readln(t[i].situation);
if (t[i].situation ='marie') or (t[i].situation='devorce') then
begin
write('donner le nb enf');
readln(t[i].nbenf);
end;
if (t[i].situation='celebataire') then
begin
write('nest marie nest fnf');
end;
end;
end;
function calcul(t1:tab):integer;
[8]
9

var i,nb:integer;
c:string;
begin
nb:=0;
i:=1;
c:='celebataire';
for i:=1to n do
begin
if t1[i].situation=c then
begin
nb:=nb+1;
end;
end;
calcul:=nb;
end;
function nom (t2:tab):string;
var i,matr:integer;
c:string;
begin
i:=1;
[9]
10

c:='';
write('donner le matricul');
read(matr);
for i:=1 to n do
begin
if t2[i].matricul=matr then
begin
c:=t2[i].nom + t2[i].prenom;
end;
end;
nom:=c;
end;

procedure tri(var ta:tab);


var v:integer;
i,j:integer;
begin
for j:=2 to n do
begin
v:=t[i].grad;
[10]
11

i:=j-1;
while (i>0)and (t[i].grad>v) do
begin
t[i+1].grad:=t[i].grad;
i:=i-1;
end;
t[i+1].grad:=v;
end;
end;
begin
lecteur(t);
x:=calcul(t);
m:=nom(t);
writeln('nb celebataire=',x);
writeln('matricul=',m);
tri(t);
end.

[11]
12

conclution

[12]

Vous aimerez peut-être aussi