fichiers pour un agenda - Delphi/Pascal - Programmation
MarshPosté le 15-05-2004 à 22:38:36
Est ce que quelqu'un pourrait m'aider? je cherche a créer 2 fichier sur ce projet et je n'y arrive pas. il faut que je crée un fichier de rdv et un autre de personne sur cet agenda:
program Agenda; type personne = record nom, prenom, telephone : string[15]; adresse : string [40] end ; type date = record jour,mois,annee:integer; lieu,sujet:string[50]; end; var choix : char; sortir : boolean; vecteurpersonne : array [1..100] of personne; totalpersonne : integer; vecteurrdv:array [1..100] of date; totalrdv:integer; procedure ajouterqqun; begin totalpersonne := totalpersonne + 1; writeln ('Nom?'); readln (vecteurpersonne[totalpersonne].nom); writeln ('Prenom?'); readln (vecteurpersonne[totalpersonne].prenom); writeln ('Telephone?'); readln (vecteurpersonne[totalpersonne].telephone); writeln ('Adresse?'); readln (vecteurpersonne[totalpersonne].adresse) end;
procedure afficherliste; var compteur : integer; begin for compteur := 1 to totalpersonne do begin writeln('personne n',compteur,' de l'' agenda'); writeln (vecteurpersonne[compteur].nom); writeln (vecteurpersonne[compteur].prenom); writeln (vecteurpersonne[compteur].adresse); writeln (vecteurpersonne[compteur].telephone) end end;
procedure afficherqqun; var compteur : integer; nomcherche : string [15]; begin writeln ('Nom?'); readln (nomcherche); for compteur :=1 to totalpersonne do begin if ( vecteurpersonne[compteur].nom = nomcherche ) then begin writeln('personne n',compteur,' de l'' agenda'); writeln (vecteurpersonne[compteur].nom); writeln (vecteurpersonne[compteur].prenom); writeln (vecteurpersonne[compteur].adresse); writeln (vecteurpersonne[compteur].telephone) end end end;
procedure supprimerqqun; var compteur : integer; nomcherche : string[15]; apresceluiquonasupprime : boolean; begin apresceluiquonasupprime := false; writeln ('Nom à supprimer?'); readln (nomcherche); for compteur := 1 to totalpersonne do begin if ( vecteurpersonne[compteur].nom = nomcherche ) then apresceluiquonasupprime := true; if ( apresceluiquonasupprime ) then begin vecteurpersonne[compteur-1].nom := vecteurpersonne[compteur].nom; vecteurpersonne[compteur-1].prenom := vecteurpersonne[compteur].prenom; vecteurpersonne[compteur-1].adresse := vecteurpersonne[compteur].adresse; vecteurpersonne[compteur-1].telephone := vecteurpersonne[compteur].telephone; end end; totalpersonne:=totalpersonne-1; end; procedure ajouterdv; begin totalrdv:=totalrdv+1; writeln('entrer jour'); readln(vecteurrdv[totalrdv].jour); writeln('entrer mois'); readln(vecteurrdv[totalrdv].mois); writeln('entrer annee'); readln(vecteurrdv[totalrdv].annee); writeln('entrer lieu'); readln(vecteurrdv[totalrdv].lieu); writeln('entrer sujet'); readln(vecteurrdv[totalrdv].sujet); end; procedure afficherlisterdv; var compteur : integer; begin for compteur := 1 to totalrdv do begin writeln('rendez-vous n',compteur,' de l'' agenda'); writeln('date') ; write (vecteurrdv[compteur].jour,'/'); write (vecteurrdv[compteur].mois,'/'); writeln (vecteurrdv[compteur].annee); writeln('lieu'); writeln (vecteurrdv[compteur].lieu); writeln('sujet'); writeln (vecteurrdv[compteur].sujet); end end; procedure afficherrdv; var compteur : integer; rdvcherche : longint; begin writeln ('jour?'); readln (rdvcherche); for compteur :=1 to totalrdv do begin if ( vecteurrdv[compteur].jour = rdvcherche ) then begin writeln('rdv n',compteur,' de l'' agenda'); writeln('date'); write (vecteurrdv[compteur].jour,'/'); write (vecteurrdv[compteur].mois,'/'); writeln (vecteurrdv[compteur].annee); writeln('lieu'); writeln (vecteurrdv[compteur].lieu); writeln('sujet'); writeln (vecteurrdv[compteur].sujet); end end end; procedure supprimerrdv; var compteur : integer; rdvcherche : longint; apresceluiquonasupprime : boolean; begin apresceluiquonasupprime := false; writeln ('jour à supprimer?'); readln (rdvcherche); for compteur := 1 to totalrdv do begin if ( vecteurrdv[compteur].jour = rdvcherche ) then apresceluiquonasupprime := true; if ( apresceluiquonasupprime ) then begin vecteurrdv[compteur-1].jour := vecteurrdv[compteur].jour; vecteurrdv[compteur-1].mois := vecteurrdv[compteur].mois; vecteurrdv[compteur-1].annee := vecteurrdv[compteur].annee; vecteurrdv[compteur-1].lieu := vecteurrdv[compteur].lieu; vecteurrdv[compteur-1].sujet := vecteurrdv[compteur].sujet; end end; totalrdv:=totalrdv-1; end; BEGIN totalpersonne := 0; sortir := false; repeat writeln; writeln (' <<<<<Agenda>>>>> '); writeln; writeln ('1- Ajouter quelqu''un'); writeln ('2- Supprimer quelqu''un'); writeln ('3- Trouver quelqu''un'); writeln ('4- Liste des personnes'); writeln ('5- Ajouter rdv'); writeln ('6- Supprimer rdv'); writeln ('7- Trouver rdv'); writeln ('8- Liste rdv'); writeln ('X- Sortir'); readln (choix); case choix of '1' : ajouterqqun; '2' : supprimerqqun; '3' : afficherqqun; '4' : afficherliste; '5' : ajouterdv; '6' : supprimerrdv; '7' : afficherrdv; '8' : afficherlisterdv; 'X' : sortir := true end until ( sortir ); end.
Marsh Posté le 15-05-2004 à 22:38:36
Est ce que quelqu'un pourrait m'aider?
je cherche a créer 2 fichier sur ce projet et je n'y arrive pas.
il faut que je crée un fichier de rdv et un autre de personne sur cet agenda:
program Agenda;
type personne = record
nom, prenom, telephone : string[15];
adresse : string [40]
end ;
type date = record
jour,mois,annee:integer;
lieu,sujet:string[50];
end;
var
choix : char;
sortir : boolean;
vecteurpersonne : array [1..100] of personne;
totalpersonne : integer;
vecteurrdv:array [1..100] of date;
totalrdv:integer;
procedure ajouterqqun;
begin
totalpersonne := totalpersonne + 1;
writeln ('Nom?');
readln (vecteurpersonne[totalpersonne].nom);
writeln ('Prenom?');
readln (vecteurpersonne[totalpersonne].prenom);
writeln ('Telephone?');
readln (vecteurpersonne[totalpersonne].telephone);
writeln ('Adresse?');
readln (vecteurpersonne[totalpersonne].adresse)
end;
procedure afficherliste;
var
compteur : integer;
begin
for compteur := 1 to totalpersonne do
begin
writeln('personne n',compteur,' de l'' agenda');
writeln (vecteurpersonne[compteur].nom);
writeln (vecteurpersonne[compteur].prenom);
writeln (vecteurpersonne[compteur].adresse);
writeln (vecteurpersonne[compteur].telephone)
end
end;
procedure afficherqqun;
var
compteur : integer;
nomcherche : string [15];
begin
writeln ('Nom?');
readln (nomcherche);
for compteur :=1 to totalpersonne do
begin
if ( vecteurpersonne[compteur].nom = nomcherche ) then
begin
writeln('personne n',compteur,' de l'' agenda');
writeln (vecteurpersonne[compteur].nom);
writeln (vecteurpersonne[compteur].prenom);
writeln (vecteurpersonne[compteur].adresse);
writeln (vecteurpersonne[compteur].telephone)
end
end
end;
procedure supprimerqqun;
var
compteur : integer;
nomcherche : string[15];
apresceluiquonasupprime : boolean;
begin
apresceluiquonasupprime := false;
writeln ('Nom à supprimer?');
readln (nomcherche);
for compteur := 1 to totalpersonne do
begin
if ( vecteurpersonne[compteur].nom = nomcherche ) then
apresceluiquonasupprime := true;
if ( apresceluiquonasupprime ) then
begin
vecteurpersonne[compteur-1].nom := vecteurpersonne[compteur].nom;
vecteurpersonne[compteur-1].prenom := vecteurpersonne[compteur].prenom;
vecteurpersonne[compteur-1].adresse := vecteurpersonne[compteur].adresse;
vecteurpersonne[compteur-1].telephone := vecteurpersonne[compteur].telephone;
end
end;
totalpersonne:=totalpersonne-1;
end;
procedure ajouterdv;
begin
totalrdv:=totalrdv+1;
writeln('entrer jour');
readln(vecteurrdv[totalrdv].jour);
writeln('entrer mois');
readln(vecteurrdv[totalrdv].mois);
writeln('entrer annee');
readln(vecteurrdv[totalrdv].annee);
writeln('entrer lieu');
readln(vecteurrdv[totalrdv].lieu);
writeln('entrer sujet');
readln(vecteurrdv[totalrdv].sujet);
end;
procedure afficherlisterdv;
var
compteur : integer;
begin
for compteur := 1 to totalrdv do
begin
writeln('rendez-vous n',compteur,' de l'' agenda');
writeln('date') ;
write (vecteurrdv[compteur].jour,'/');
write (vecteurrdv[compteur].mois,'/');
writeln (vecteurrdv[compteur].annee);
writeln('lieu');
writeln (vecteurrdv[compteur].lieu);
writeln('sujet');
writeln (vecteurrdv[compteur].sujet);
end
end;
procedure afficherrdv;
var
compteur : integer;
rdvcherche : longint;
begin
writeln ('jour?');
readln (rdvcherche);
for compteur :=1 to totalrdv do
begin
if ( vecteurrdv[compteur].jour = rdvcherche ) then
begin
writeln('rdv n',compteur,' de l'' agenda');
writeln('date');
write (vecteurrdv[compteur].jour,'/');
write (vecteurrdv[compteur].mois,'/');
writeln (vecteurrdv[compteur].annee);
writeln('lieu');
writeln (vecteurrdv[compteur].lieu);
writeln('sujet');
writeln (vecteurrdv[compteur].sujet);
end
end
end;
procedure supprimerrdv;
var
compteur : integer;
rdvcherche : longint;
apresceluiquonasupprime : boolean;
begin
apresceluiquonasupprime := false;
writeln ('jour à supprimer?');
readln (rdvcherche);
for compteur := 1 to totalrdv do
begin
if ( vecteurrdv[compteur].jour = rdvcherche ) then
apresceluiquonasupprime := true;
if ( apresceluiquonasupprime ) then
begin
vecteurrdv[compteur-1].jour := vecteurrdv[compteur].jour;
vecteurrdv[compteur-1].mois := vecteurrdv[compteur].mois;
vecteurrdv[compteur-1].annee := vecteurrdv[compteur].annee;
vecteurrdv[compteur-1].lieu := vecteurrdv[compteur].lieu;
vecteurrdv[compteur-1].sujet := vecteurrdv[compteur].sujet;
end
end;
totalrdv:=totalrdv-1;
end;
BEGIN
totalpersonne := 0;
sortir := false;
repeat
writeln;
writeln (' <<<<<Agenda>>>>> ');
writeln;
writeln ('1- Ajouter quelqu''un');
writeln ('2- Supprimer quelqu''un');
writeln ('3- Trouver quelqu''un');
writeln ('4- Liste des personnes');
writeln ('5- Ajouter rdv');
writeln ('6- Supprimer rdv');
writeln ('7- Trouver rdv');
writeln ('8- Liste rdv');
writeln ('X- Sortir');
readln (choix);
case choix of
'1' : ajouterqqun;
'2' : supprimerqqun;
'3' : afficherqqun;
'4' : afficherliste;
'5' : ajouterdv;
'6' : supprimerrdv;
'7' : afficherrdv;
'8' : afficherlisterdv;
'X' : sortir := true
end
until ( sortir );
end.
MERCi!!!!d'avance