Programme de gestion des fichiers

Contenu du snippet

PROGRAM D?ETUDIANT;  
{  
REPUBLIQUE ALGERIENNE DEMOCRATIQUE ET POPULAIRE  
MENISTRE D'ENSEIGNEMENT SUPERIEURE ET DE LA RECHERCHE SCIENTIFIQUE  
UNIVERSITE AMMAR TLAIDJI LAGHOUAT  
DEPARTEMENT INFORMATIQUE ET MATHEMATIQUE  
Programme realise par BOURAS Mohamed et BENADDOUN Elhadj 
Encadrer par Mm TAABA  
Premiere annee Mathematique et Informatique  
Saison universitair 2009/2010  
}  
uses crt;  
label g,h;  
const n=1;  
type date=record  
      joure:1..31;  
     mois:1..12;  
     annee:00..99;  
 end;  
 anuver=record  
     ane1:integer;  
     ane2:integer;  
 end;  
     identite=record  
          num:integer;  
         nom:string[30];  
         prenom:string[30];  
         d_ness:date;  
         l_ness:string[30];  
         niv:string[30];  
         filer:string[30];  
     ane_univ:anuver;  
 end;  
  var  
ch:char;  
c_etud:file of identite;  
etud:identite;  
n2,n1,j,i,k:integer;  
{+--------------------------------------------------------}  
procedure affichage;  
begin  
     gotoxy(13,03);  
     writeln('----------------------------------------------------- ?);  
      for j:=4 to 22 do  
      begin  
        gotoxy(13,J);  
        writeln('-');  
        gotoxy(68,j);  
        writeln('-');  
      end;  
     gotoxy(52,04);  
     writeln(' ÄÄÄÄÄÄÄÄÄÄÄÄ¿');  
      for k:=5 to 10do  
      begin  
        gotoxy(52,k);  
        writeln('³');  
        gotoxy(65,k);  
        writeln('³');  
      end;  
     gotoxy(52,11);  
     writeln('ÀÄÄÄÄÄÄÄÄÄÄÄÄÙ');  
     gotoxy(57,07);  
     writeln('PHOTO');  
     gotoxy(16,05);  
     writeln(' MINISTRE D''ENSEGNEMENT SUPERIEURE');  
     gotoxy(16,6);  
     writeln('  ET DE LA RECHERCHE SCIENTIFIQUE ');  
     gotoxy(16,7);  
     writeln('      UNIVERSITE DE LAGHOUAT');  
     gotoxy(16,8);  
     writeln('    PRISEDENCE DE L''UNIVERSITE');  
     gotoxy(23,11);  
     writeln('      CARTE D''ETUDIANT');  
     gotoxy(17,13);  
     writeln('NUMERO:');  
     gotoxy(17,15);  
     writeln('NOM:');  
     gotoxy(37,15);  
     writeln('PRENOM:');  
     gotoxy(17,17);  
     writeln('D NESSANCE:');  
     gotoxy(47,17);  
     writeln('A'':');  
     gotoxy(17,19);  
     writeln('NIVEAU:');  
     gotoxy(47,19);  
     writeln('FILIERE:');  
     gotoxy(17,21);  
     writeln('L''ANNEE UNIVERSITAIR:');  
     gotoxy(47,21);  
     writeln('/');  
     gotoxy(13,23);  
     writeln('------------------------------------------------- ');  
end;  
{----------------------------------------------------}  
procedure creation;  
begin  
      with etud do  
      begin  
        gotoxy(26,13);  
        readln(num);  
        gotoxy(23,15);  
        readln(nom);  
        gotoxy(47,15);  
        readln(prenom);  
          with d_ness do  
          begin  
            gotoxy(32,17);  
            readln(joure);  
            gotoxy(36,17);  
            readln(mois);  
            gotoxy(40,17);  
            readln(annee);  
          end;  
        gotoxy(52,17);  
        readln(l_ness);  
        gotoxy(26,19);  
        readln(niv);  
        gotoxy(57,19);  
        readln(filer);  
          with ane_univ do  
          begin  
            gotoxy(42,21);  
            readln(ane1);  
            gotoxy(49,21);  
            readln(ane2);  
          end;  
      end;  
end;  
{---------------------------------------------------------}  
procedure sesir;  
begin  
     rewrite(c_etud);  
       for i:=1 to n do  
       begin  
         affichage;  
         creation;  
         write(c_etud,etud);  
         clrscr;  
       end;  
     close(c_etud);  
     clrscr;  
end;  
{--------------------------------------------}  
procedure consult;  
begin  
     reset(c_etud);  
     gotoxy(20,08);  
     writeln('donnez le numero de l''enregistrement:');  
     gotoxy(58,08);  
     read(i);  
       if i>filesize(c_etud)then  
       begin  
         clrscr;  
         gotoxy(20,08);  
         writeln('la valeur depasse la taille du fichier?');  
         gotoxy(28,10);  
         writeln('<appyer sur une touch>');  
         gotoxy(52,10);  
         ch:=readkey;  
       end  
       else  
       begin  
         clrscr;  
         affichage;  
         seek(c_etud,i-1);  
         read(c_etud,etud);  
           with etud do  
           begin  
             gotoxy(26,13);  
             writeln(num);  
             gotoxy(23,15);  
             writeln(nom);  
             gotoxy(47,15);  
             writeln(prenom);  
               with d_ness do  
               begin  
                 gotoxy(32,17);  
                 writeln(joure);  
                 gotoxy(36,17);  
                 writeln(mois);  
                 gotoxy(40,17);  
                 writeln(annee);  
               end;  
             gotoxy(52,17);  
             writeln(l_ness);  
             gotoxy(26,19);  
             writeln(niv);  
             gotoxy(59,19);  
             writeln(filer);  
               with ane_univ do  
               begin  
                 gotoxy(42,21);  
                 writeln(ane1);  
                 gotoxy(49,21);  
                 writeln(ane2);  
               end;  
           end;  
         ch:=readkey;  
         close(c_etud);  
         readln;  
       end;  
end;  
{-------------------------------------------------------------}  
procedure affichage1;  
begin  
     reset(c_etud);  
       with etud do  
       for i:=1 to filesize(c_etud) do  
       begin  
         read(c_etud,etud);  
         affichage;  
         gotoxy(26,13);  
         writeln(num);  
         gotoxy(23,15);  
         writeln(nom);  
         gotoxy(47,15);  
         writeln(prenom);  
           with d_ness do  
           begin  
             gotoxy(32,17);  
             writeln(joure);  
             gotoxy(36,17);  
             writeln(mois);  
             gotoxy(40,17);  
             writeln(annee);  
           end;  
         gotoxy(52,17);  
         writeln(l_ness);  
         gotoxy(26,19);  
         writeln(niv);  
         gotoxy(57,19);  
         writeln(filer);  
           with ane_univ do  
           begin  
             gotoxy(42,21);  
             writeln(ane1);  
             gotoxy(49,21);  
             writeln(ane2);  
           end;  
         ch:=readkey;  
         clrscr;  
       end;  
     close(c_etud);  
end;  
{------------------------------------------------------------------}  
procedure ajoute;  
begin  
     reset(c_etud);  
     gotoxy(17,8);  
     write('donner le nombre des etudients ? ajouter: ');  
     gotoxy(59,8);  
     read(n1);  
     clrscr;  
     affichage;  
     seek(c_etud,filesize(c_etud));  
       for i:= 1 to n1 do  
       begin  
       affichage;  
         creation;  
         write(c_etud,etud);  
         clrscr;  
       end;  
     close(c_etud);  
     clrscr;  
end;  
{------------------------------------------------------------------}  
begin              {programme principale}  
     assign(c_etud,'crtetd');  
     g:clrscr;  
     gotoxy(13,03);  
       writeln('--------------------------------------------------------------');  
       for j:=4 to 22 do  
       begin  
         gotoxy(13,J);  
         writeln('-');  
         gotoxy(70,j);  
         writeln('-');  
       end;  
     gotoxy(18,7);  
     writeln('--------------CARTE D''ETUDIANT--------------');  
     gotoxy(20,9);  
     writeln('1:CREATION');  
     gotoxy(20,11);  
     writeln('2:AFFICHAGE');  
     gotoxy(20,13);  
     writeln('3:CONSULTATION');  
     gotoxy(20,15);  
     writeln('4:AJOUT');  
     gotoxy(20,17);  
     writeln('5:QUITTER');  
     gotoxy(20,19);  
     writeln('DONNEZ VOTRE CHOIX :  ');  
     gotoxy(13,23);  
     writeln('--------------------------------------------------------------------');  
     gotoxy(41,19);  
     readln(n2);  
     clrscr;  
       case n2 of  
       1:begin  
           sesir;  
           goto g;  
         end;  
       2:begin  
           affichage1;  
           goto g;  
         end;  
       3:begin  
           consult;  
           goto g  
         end;  
       4:begin  
           ajoute;  
           goto g  
         end;  
       5:goto h;  
       end;  
h:end.

A voir également

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.