برنامج لتسجيل موظفين أو طلبة النسخة الثالثة
صفحة 1 من اصل 1
برنامج لتسجيل موظفين أو طلبة النسخة الثالثة
برنامج لتسجيل موظفين أو طلبة النسخة الثالثة
1 اعادة تهيئة السجلات من جديد
2 عرض محتوى السجلات
3 بحث في السجلات
4 اضافة سجل الى السجلات
5 حذف سجل من السجلات
6 تعديل بيانات سجل من السجلات
7 خروج من البرنامج
1 اعادة تهيئة السجلات من جديد
2 عرض محتوى السجلات
3 بحث في السجلات
4 اضافة سجل الى السجلات
5 حذف سجل من السجلات
6 تعديل بيانات سجل من السجلات
7 خروج من البرنامج
- الكود:
{
*** REPUBLIQUE ALGERIENNE DEMOCRATIQUE POPULAIRE ***
}
program project2_de_delfa;
uses crt;
const n1 = 1;
type date = record
jour : 01..31;
mois : 01..12;
anne : 1980..2200;
end;
etudiant = record
code: integer;
nom : string[15];
prenom : string[20];
date_ne : date;
lui : string[40];
adress : string[30];
date_ent : date;
date_sor : date;
fonction : string[20];
end;
tableau = array[0..n1] of etudiant;
var E : etudiant;
etu,etu1 : file of etudiant;
chois:integer;
table : tableau;
rte:boolean;
{****** Declaration des procedures ******}
procedure alger_ler;
begin
clrscr;
gotoxy(15,2);
write('REPUBLIQUE ALGERIENNE DEMOCRATIQUE POPULAIRE');
end;
{Declaration procedure de chois}
procedure chois_aff;
begin
alger_ler;
gotoxy(10,5); write('1. Creation du fichier');
gotoxy(10,7); write('2. Affichage');
gotoxy(10,9); write('3. Rechercher');
gotoxy(10,11); write('4. Ajout');
gotoxy(10,13); write('5. Supprimer');
gotoxy(10,15); write('6. Modifie');
gotoxy(10,17); write('7. Quitter');
gotoxy(5,20); write('Entrez votre chois : '); readln(chois);
end;
{Declaration procedure de fenetre1}
procedure fenetre;
begin
alger_ler;
gotoxy(2,5); write('Donnez le code : ');
gotoxy(2,7); write('Donnez le nom : ');
gotoxy(2,9); write('Donnez le prenom : ');
gotoxy(2,11);write('Donnez le date nessonce : ');
gotoxy(30,11);write('/'); gotoxy(33,11); write('/');
gotoxy(2,13);writeln('Donnez le lui nessonce : ');
gotoxy(2,15); writeln('Donnez l"adress : ');
gotoxy(2,17); write('Donnez la date entree :');
gotoxy(28,17); write('/'); gotoxy(31,17); write('/');
gotoxy(2,19);write('Donnez la date sortie :');
gotoxy(28,19); write('/'); gotoxy(31,19); write('/');
gotoxy(2,21); write('Donnez la fonction : ');
end;
{Declaration procedure de fenetre2}
procedure fenetre_aa;
begin
alger_ler;
gotoxy(12,5); write('Code : '); gotoxy(12,7); write('Nom : ');
gotoxy(12,9); write('Prenom : '); gotoxy(12,11); write('Date de nessonce :');
gotoxy(33,11); write('/'); gotoxy(36,11); write('/');
gotoxy(12,13); write('Lui de nessonce :'); gotoxy(12,15); write('Adresse :');
gotoxy(12,17); write('Date de entree :');
gotoxy(31,17); write('/'); gotoxy(34,17); write('/');
gotoxy(12,19); write('Date sortie :');
gotoxy(28,19); write('/'); gotoxy(31,19); write('/');
gotoxy(12,21); write('La fonction :');
end;
{Declaration procedure ecrir dans le fichier}
procedure ecrir_fiche;
begin
with E do
begin
gotoxy(19,5); readln(code);
gotoxy(18,7); readln(nom);
gotoxy(21,9); readln(prenom);
gotoxy(28,11); read(date_ne.jour);
gotoxy(31,11); read(date_ne.mois); gotoxy(34,11); readln(date_ne.anne);
gotoxy(27,13); readln(lui);
gotoxy(20,15); readln(adress);
gotoxy(26,17); read(date_ent.jour);
gotoxy(29,17); read(date_ent.mois); gotoxy(32,17); readln(date_ent.anne);
gotoxy(26,19); read(date_sor.jour);
gotoxy(29,19); read(date_sor.mois); gotoxy(32,19); readln(date_sor.anne);
gotoxy(23,21); readln(fonction);
end;
end;
{Declaration procedure de creation}
procedure creation;
var no : char;
begin
assign(etu,'delfa1'); rewrite(etu);
repeat
fenetre; ecrir_fiche;
write(etu,E);
writeln('Autre saisi o/n '); readln(no);
until no='n';
close(etu);
chois_aff;
end;
{Declaration procedure de ajout}
procedure ajout_12;
var no1 : char;
trou : boolean;
begin trou:=false;
assign(etu,'delfa1'); reset(etu);
seek(etu,filesize(etu));
repeat
fenetre;
ecrir_fiche;
write(etu,E);
writeln('Autre saisie ? o/n'); readln(no1);
if no1='n' then trou:=true;
until (no1='n')and(trou=true);
close(etu);
chois_aff;
end;
{Declatation procedure de lire}
procedure lire_fiche;
begin
with E do
begin
gotoxy(19,5); write(code);
gotoxy(18,7); write(nom);
gotoxy(21,9); write(prenom);
gotoxy(31,11); write(date_ne.jour);
gotoxy(34,11); write(date_ne.mois); gotoxy(37,11); write(date_ne.anne);
gotoxy(30,13); write(lui);
gotoxy(22,15); write(adress);
gotoxy(29,17); write(date_ent.jour);
gotoxy(32,17); write(date_ent.mois); gotoxy(35,17); write(date_ent.anne);
gotoxy(26,19); write(date_sor.jour);
gotoxy(29,19); write(date_sor.mois); gotoxy(32,19); write(date_sor.anne);
gotoxy(26,21); write(fonction);
end;
end;
{declaration procedure affichage}
procedure affichage;
begin
assign(etu,'delfa1'); reset(etu);
while not eof(etu) do
begin
fenetre_aa;
read(etu,E); lire_fiche;
gotoxy(5,25); write('presse key continue : '); readkey;
end;
close(etu);
chois_aff;
end;
{Declaration procedure de lire fichier}
procedure lire_fiche1;
begin
with E do
begin
gotoxy(19,5); write(code);
gotoxy(18,7); write(nom);
gotoxy(21,9); write(prenom);
gotoxy(31,11); write(date_ne.jour);
gotoxy(34,11); write(date_ne.mois); gotoxy(37,11); write(date_ne.anne);
gotoxy(30,13); write(lui);
gotoxy(22,15); write(adress);
gotoxy(29,17); write(date_ent.jour);
gotoxy(32,17); write(date_ent.mois); gotoxy(35,17); write(date_ent.anne);
gotoxy(26,19); write(date_sor.jour);
gotoxy(29,19); write(date_sor.mois); gotoxy(32,19); write(date_sor.anne);
gotoxy(26,21); write(fonction);
end;
end;
{Procedure rechercher }
procedure rechercher;
const n1=1; m1=15;
var tab1 : array[0..n1] of string[m1];
trouve:boolean;
begin
trouve:=false; alger_ler;
gotoxy(7,15); write('Donnez le nom de rechercher :');
gotoxy(37,15); readln(tab1[n1]);
assign(etu,'delfa1'); reset(etu);
while not eof(etu) do
begin
with E do
begin
read(etu,E);
if tab1[n1]=nom then
begin
fenetre_aa;
lire_fiche1;
trouve:=true;
end;
end;
end;
close(etu);
if trouve=false then begin gotoxy(5,20);
write(' Nom ne est pas trouve de la liste'); end;
readln;
chois_aff;
end;
{***** Declaration procedure supprimation nom de fichier *****}
procedure supprimer;
const n2 = 1; m2 = 15;
var tab2 : array[0..n2] of string[m2];
etu1 : file of etudiant;
trou1,trou2 : boolean;
begin
trou1:=false; alger_ler;
gotoxy(8,14); write('Donnez le nom a suprimer :');
gotoxy(35,14); readln(tab2[n2]);
assign(etu,'delfa1'); reset(etu);
assign(etu1,'delfa2'); rewrite(etu1);
while not eof(etu) do
begin
read(etu,E);
if tab2[n2]<>E.nom then
begin
write(etu1,E);
trou1:=true;
end else trou2:=true;
end;
close(etu1);
if (trou1=true)and(trou2=true) then
begin
reset(etu1); rewrite(etu);
while not eof(etu1) do
begin
read(etu1,E);
write(etu,E);
end;
rewrite(etu1);
close(etu); close(etu1);
end else
begin
gotoxy(5,15); write('Le nom non trouve');
readln;
end;
chois_aff;
end;
{*********************************************************}
procedure fente; {************ 1 ***********}
begin
clrscr;
gotoxy(10,4); write('1. Code................. :');
gotoxy(10,5); write('2. Nom.................. :');
gotoxy(10,6); write('3. Prenom............... :');
gotoxy(10,7); write('4. Date de nucence. Jour :');
gotoxy(10,8); write('5.................. Mois :');
gotoxy(10,9); write('6.................. Anne :');
gotoxy(10,10); write('7. Leui................. :');
gotoxy(10,11); write('8. Adresse.............. :');
gotoxy(10,12); write('9. Date entree..... Jour :');
gotoxy(10,13); write('10................. Mois :');
gotoxy(10,14); write('11................. Anne :');
gotoxy(10,15); write('12. Date sortie.... Jour :');
gotoxy(10,16); write('13................. Mois :');
gotoxy(10,17); write('14................. Anne :');
gotoxy(10,18); write('15. La fonction......... :');
gotoxy(10,20); write('16. Quitter')
end;
procedure affiche_table(var tab1:tableau); {************ 2 ***********}
label L;
var i:integer;
begin
fente;
with tab1[n1] do
begin
gotoxy(37,4); write(code);
gotoxy(37,5); write(nom); gotoxy(37,6); write(prenom);
with date_ne do
begin gotoxy(37,7); write(jour); gotoxy(37,8); write(mois);
gotoxy(37,9); write(anne); end;
gotoxy(37,10); write (lui); gotoxy(37,11); write(adress);
with date_ent do
begin gotoxy(37,12); write(jour); gotoxy(37,13); write(mois);
gotoxy(37,14); write(anne); end;
with date_sor do
begin gotoxy(37,15); write(jour); gotoxy(37,16); write(mois);
gotoxy(37,17); write(anne); end;
gotoxy(37,18); write(fonction);
end;
L: begin gotoxy(38,22); write(' ');
gotoxy(5,22); write('Donnez est votre chois modifie : '); readln(i); end;
if i=1 then {***}
begin
gotoxy(37,4); write(' ');
gotoxy(37,4); readln(tab1[n1].code); goto L;
end else
if i=2 then
begin
gotoxy(37,5); write(' ');
gotoxy(37,5); readln(tab1[n1].nom); goto L;
end else
if i=3 then
begin
gotoxy(37,6); write(' ');
gotoxy(37,6); readln(tab1[n1].prenom); goto L;
end else
if i=4 then
begin
gotoxy(37,7); write(' ');
gotoxy(37,7); readln(tab1[n1].date_ne.jour); goto L;
end else
if i=5 then
begin
gotoxy(37,8); write(' ');
gotoxy(37,8); readln(tab1[n1].date_ne.mois); goto L;
end else
if i=6 then
begin
gotoxy(37,9); write(' ');
gotoxy(37,9); readln(tab1[n1].date_ne.anne); goto L;
end else
if i=7 then
begin
gotoxy(37,10); write(' ');
gotoxy(37,10); readln(tab1[n1].lui); goto L;
end else
if i=8 then
begin
gotoxy(37,11); write(' ');
gotoxy(37,11); readln(tab1[n1].adress); goto L;
end else
if i=9 then
begin
gotoxy(37,12); write(' ');
gotoxy(37,12); readln(tab1[n1].date_ent.jour); goto L;
end else
if i=10 then
begin
gotoxy(37,13); write(' ');
gotoxy(37,13); readln(tab1[n1].date_ent.mois); goto L;
end else
if i=11 then
begin
gotoxy(37,14); write(' ');
gotoxy(37,14); readln(tab1[n1].date_ent.anne); goto L;
end else
if i=12 then
begin
gotoxy(37,15); write(' ');
gotoxy(37,15); readln(tab1[n1].date_sor.jour); goto L;
end else
if i=13 then
begin
gotoxy(37,16); write(' ');
gotoxy(37,16); readln(tab1[n1].date_sor.mois); goto L;
end else
if i=14 then
begin
gotoxy(37,17); write(' ');
gotoxy(37,17); readln(tab1[n1].date_sor.anne); goto L;
end else
if i=15 then
begin
gotoxy(37,18); write(' ');
gotoxy(37,18); readln(tab1[n1].fonction); goto L;
end else
if i>=16 then {***}
begin
fente;
with tab1[n1] do
begin
gotoxy(37,4); write(code);
gotoxy(37,5); write(nom); gotoxy(37,6); write(prenom);
with date_ne do
begin gotoxy(37,7); write(jour); gotoxy(37,8); write(mois);
gotoxy(37,9); write(anne); end;
gotoxy(37,10); write (lui); gotoxy(37,11); write(adress);
with date_ent do
begin gotoxy(37,12); write(jour); gotoxy(37,13); write(mois);
gotoxy(37,14); write(anne); end;
with date_sor do
begin gotoxy(37,15); write(jour); gotoxy(37,16); write(mois);
gotoxy(37,17); write(anne); end;
gotoxy(37,18); write(fonction);
end;
end; {*** ***}
end;
procedure charge_fich(tab1:tableau); {************ 3 ***********}
const n1=1;
begin
assign(etu1,'delfa2'); reset(etu1);
seek(etu1,filesize(etu1));
E.code:=tab1[n1].code;
E.nom:=tab1[n1].nom;
E.prenom:=tab1[n1].prenom;
E.date_ne.jour:=tab1[n1].date_ne.jour;
E.date_ne.mois:=tab1[n1].date_ne.mois;
E.date_ne.anne:=tab1[n1].date_ne.anne;
E.lui:=tab1[n1].lui;
E.adress:=tab1[n1].adress;
E.date_ent.jour:=tab1[n1].date_ent.jour;
E.date_ent.mois:=tab1[n1].date_ent.mois;
E.date_ent.anne:=tab1[n1].date_ent.anne;
E.date_sor.jour:=tab1[n1].date_sor.jour;
E.date_sor.mois:=tab1[n1].date_sor.mois;
E.date_sor.anne:=tab1[n1].date_sor.anne;
E.fonction:=tab1[n1].fonction;
write(etu1,E);
close(etu1);
assign(etu,'delfa1'); rewrite(etu);
assign(etu1,'delfa2'); reset(etu1);
while not eof(etu1) do
begin
read(etu1,E);
write(etu,E);
end;
close(etu); close(etu1);
end;
procedure modifi_fiche(var tab1:tableau); {************ 4 ***********}
const n1 = 1; m1 =15;
type tableaux = array[0..n1] of string[m1];
var trou2,trou3 : boolean;
tab3 : tableaux;
begin
clrscr; trou2 := false;
gotoxy(8,14); write('Donnez le nom a modifie :');
gotoxy(35,14);readln(tab3[n1]);
assign(etu,'delfa1'); reset(etu);
assign(etu1,'delfa2'); rewrite(etu1);
while not eof(etu) do
begin
read(etu,E);
if tab3[n1]=E.nom then
begin
tab1[n1].code:=E.code;
tab1[n1].nom:=E.nom;
tab1[n1].prenom:=E.prenom;
tab1[n1].date_ne.jour:=E.date_ne.jour;
tab1[n1].date_ne.mois:=E.date_ne.mois;
tab1[n1].date_ne.anne:=E.date_ne.anne;
tab1[n1].lui:=E.lui;
tab1[n1].adress:=E.adress;
tab1[n1].date_ent.jour:=E.date_ent.jour;
tab1[n1].date_ent.mois:=E.date_ent.mois;
tab1[n1].date_ent.anne:=E.date_ent.anne;
tab1[n1].date_sor.jour:=E.date_sor.jour;
tab1[n1].date_sor.mois:=E.date_sor.mois;
tab1[n1].date_sor.anne:=E.date_sor.anne;
tab1[n1].fonction:=E.fonction; trou2:=true;
end else write(etu1,E);
end;
close(etu); close(etu1);
if trou2=true then
begin
affiche_table(table);
charge_fich(table);
end else writeln('Nom non trouve de la liste');
end;
{*********************************************************}
begin {***** Programmer principal *****}
rte:=false; chois_aff; {PROGRAMME PRINCIPALE}
repeat
case chois of
1:creation;
2:affichage;
3:rechercher;
4:ajout_12;
5:supprimer;
6:begin modifi_fiche(table); chois_aff; end;
7:begin gotoxy(7,25); write('Fin de programmer');
rte:=true; readln; end;
else chois_aff;
end;
until (chois=7)and(rte=true);
end.
مواضيع مماثلة
» برنامج لتسجيل موظفين أو طلبة النسخة الثانية
» برنامج لتسجيل موظفين أو طلبة النسخة الاولى
» النسخة الجديدة من برنامج - برنامج تسيير محل تجاري - الموضوع من الاعضاء فقط
» النسخة الجديدة من برنامج برنامج تسيير محل تجاري
» برنامج بالدلفي لتسيير مــحل تـجـــاري النسخة 2
» برنامج لتسجيل موظفين أو طلبة النسخة الاولى
» النسخة الجديدة من برنامج - برنامج تسيير محل تجاري - الموضوع من الاعضاء فقط
» النسخة الجديدة من برنامج برنامج تسيير محل تجاري
» برنامج بالدلفي لتسيير مــحل تـجـــاري النسخة 2
صفحة 1 من اصل 1
صلاحيات هذا المنتدى:
لاتستطيع الرد على المواضيع في هذا المنتدى