program inscrialiment; uses crt; type tab=array [0..10] of word; type typaliment=record nom:string; additif:tab; end; type tabali=array [0..1000] of typaliment; type tab1=array [1..500] of boolean; type danger=record code:word; val:string; end; type tab2=array [1..500] of danger; var ali:typaliment; tableau1:tabali; dif:boolean; dang:danger; tableau7:tab1; i,j,h,g,nbrealiment:word; fichieraliment:file of tabali; fichierdanger:file of tab2; warn,tableau6:tab2; begin clrscr; assign (fichieraliment,'C:\miage\BasededonneesAliment.txt'); rewrite(fichieraliment); assign (fichierdanger,'C:\miage\basededonneesDanger.txt'); rewrite (fichierdanger); writeln ('donner le nombre d''aliments … enregistrer'); readln (nbrealiment); writeln; h:=0; tableau1[0].additif[0]:=nbrealiment; write (fichieraliment,tableau1); for i:=1 to nbrealiment do begin writeln ('Donner le nom de l''aliment Nø ',i,' … enregistrer'); readln (ali.nom); writeln ('Donner le nombre d''additifs de l''aliment Nø ',i,' … enregistrer'); readln (ali.additif[0]); while (ali.additif[0]>10) do begin writeln('le nombre d''additif entrer est trop ‚lev‚, veuillez donner un nombre inf‚rieur a 10 addditif'); writeln ('redonner le nombre d''additifs de l''aliment Nø ',i,' … enregistrer'); readln (ali.additif[0]); end; for j:=1 to ali.additif[0] do begin dif:=true; writeln ('Donner le code de l''additif nø ',j,' de l''aliment Nø ',i,' … enregistrer'); readln (ali.additif[j]); for g:=1 to h do begin if tableau6[g].code=ali.additif[j] then dif:=false; end; if dif then begin dang.code:=ali.additif[j]; odd(ali.additif[j]); if odd(ali.additif[j]) then tableau7[ali.additif[j]]:=false else tableau7[ali.additif[j]]:=true; if tableau7[ali.additif[j]]=false then dang.val:=' non dangereux' else dang.val:=' dangereux'; h:=h+1; tableau6[h]:=dang; warn[h]:=dang; write (fichierdanger,warn); end; end; tableau1[i]:=ali; write (fichieraliment,tableau1); writeln; end; close (fichierdanger); close (fichieraliment); reset (fichieraliment); read (fichieraliment,tableau1); clrscr; writeln; writeln; writeln(' LA LISTE DES ALIMENTS ENREGISTRER EST :'); write(' ---------------------------------------'); writeln; writeln; for i:=1 to tableau1[0].additif[0] do begin read (fichieraliment,tableau1); write (tableau1[i].nom); writeln; end; readln; readln; end.