RECHERCHER :
COMMUNAUTE MP
Identifiez vous ...
Devenir Membre
J'ai oublié mon MDP
DOMAINE MP
Bavardages
Langages Généraux
Langages Web
Langages DotNet
Autres langages
Dev. Jeux Video
Sécurité
Sys. Exploitation
Graphismes
Logiciels
Réseaux
Bases de données
Méthodologies
Emplois High-tech
Aide juridique
Articles juridiques
FORUM
Index des forums
Ajouter un sujet
Rechercher sujet
Contact Responsable
Devenir modérateur
CHAT MP IRC
Votre pseudo ...
Srv: irc.moteurprog.com
Chan: #MoteurProg
PARTICIPER
Plus de 3500 emplois.
Rechercher un job
Déposez votre CV
Emplois High-tech

Visiteur MP

 comment concerver les données?

Forum : PASCAL
Sous Catégorie : Aucune
Type du sujet : Sujet Normale
FAQ : FAQ PASCAL

SUIVI DES SUJETS PAR MAIL

SUIVI PAR MAIL INACTIF

RESOLUTION DU SUJET SUJET RESOLU
BLOQUAGE DU SUJET SUJET ACTIF
APPARTENANCE A LA FAQ N'APPARTIENT PAS A LA FAQ


PAGE : [1]

POSTER UN NOUVEAU SUJET REPONDRE A CE SUJET

FORUM PASCAL

PREMIERE PAGE

PAGE PRECEDENTE

Page précedente

Page suivante

PAGE SUIVANTE

DERNIERE PAGE
molion1
Nouveau membre
Inscrit : 19/02/2007
Messages : 1
Message
#124703
Posté le 19/02/07 à 10:12
Salut à tous je voulais vous demander comment faire pour concerver les données entrée par un utilisateur.
Mon programme est censé permettre la création d'un arbre généalogique dynamique. Je suis en core au début. Voici le programme.


program projet;
uses crt;
type
ensemble= set of char;
Const CValide : Ensemble= ['+',' ','*','-','/','0','1','2','3','4','5','6','7','8','9','A','a','z','e','r','t','y','u','i',
'o','p','q','s','d','f','g','h','j','k','l','m','—','w','x','c','b','n','B','C','D','E','F'];

type element= string;
ptr = ^sommet;
sommet = record
Pr:ptr;
Pf:ptr;
Fr:ptr;
Gen:integer;
num:integer;
Val:element;
end;
fil= record
deb:ptr;
fin:ptr;
end;

function noms(e:integer):string;
var tab:array[1..10] of char;
c:char;
i:integer;

begin
for i:=1 to 10 do tab[i]:=' ';

i:=1;
writeln('cbon');
c:=' ';
while (c in cvalide) do
begin
write('');
c:= readkey;

if (c in cvalide) then
begin
write(c);
tab[i]:=c;
end;
i:=i+1;
end;
noms:=tab;
end;

procedure defiler( F:fil);
var F1,Aux:ptr;
begin
F1:=@F.deb;
F.deb^:= F.deb^.fr^;
F1^.fr:= nil;
end;
procedure enfiler (A:element;F:fil);
var nouv:sommet;
un_pointeur:ptr;

begin
nouv.Pr:=nil;
nouv.Fr:=nil;
nouv.Pf:=nil;
nouv.val:='';
nouv.num:=0;

nouv.val:=A;
F.deb^.Fr:=@nouv;
F.fin^.Fr:=nil;
F.fin:=@nouv;
end;

function file_vide(F:fil):boolean;

begin
If F.deb =nil then
file_vide:=true
else file_vide:=false;
end;
function existe_fils(f:sommet;A:sommet):boolean;

begin
if f.Pf=nil then
existe_fils:=false
else existe_fils:=true;
end;
function lire(a:string):string;

begin
read(a);

end;

function existe_frere(f:sommet;A:sommet):boolean;

begin
if f.Fr=nil then
existe_frere:=false
else existe_frere:=true;
end;
var nouv:sommet;
function creersommet(a:integer):ptr;
var u:sommet;
p:ptr;
begin
u.val:=' ';
u.pr:=nil;
u.fr:=nil;
u.pf:=nil;
u.num:=0;
p:=@u;
creersommet:=p;
end;

{creer_sommet:
nouv.Pr:=nil;
nouv.Fr:=nil;
nouv.Pf:=nil;
nouv.val:='';
nouv.num:=0;}

var car,car1:char;
k:string;
W,Z,X:sommet;
nb,j:integer;
procedure enfants(nom_pere:string;n:integer);
var nouv:sommet;
begin

end;

begin
clrscr;
writeln('entrer le nom de l ancˆtre');

X.Pr:=nil;
X.Fr:=nil;
X.Pf:=nil;
X.val:=noms(2);
X.num:=0;
k:=X.val;
writeln(k);
writeln('est ce que ',k ,'a eu des enfants:Y / N');
car :=readkey;
if car='y' then
begin
writeln('entrer le nom de son 1er Fils');

W.val:=noms(2);
W.Pr:=nil;
W.Fr:=nil;
W.Pf:=nil;
W.num:=0;

X.Pf:= @W ;
k:=W.val;
writeln('',k,' a t il des freres?:Y / N');
car1 :=readkey ;
if car1='y' then
begin
writeln('entrez le nombre');
read (nb);
j:=1;
while (j<=nb) do
begin
writeln('entrez le nom du ',j,'Šme frŠre de ',k,'');
Z.val:=noms(2);
Z.Pr:=nil;
Z.Fr:=nil;
Z.Pf:=nil;
Z.num:=0;
W:=W.fr^;
j:=j+1;
end;
end;
end;




end.



en fait ce n'est qu'une partie test j'aimerait pouvoir stocker en mémoire les contenues des variables X, W et Z afin de pouvoir les réutilisées, sinon à un individu dans l'arbre crée va correspondre une variable ce qui n'est pas bon du tout.

Aussi j'aimerai savoir si mes syntaxe son bonne.
__________________________
mieux vaut être conscient de son ignorance, que d'ignorer qu'on ignore.

HAUT DE PAGE

PROFIL MEMBRE LUI ECRIRE 

Publicité
Inscrit : X
Messages : X
Message
#Aucun

HAUT DE PAGE

  

pac
Co-Administrateur
Superviseur :
- Méthodologie.
Modérateur :
- Delphi
Chef de projet(s) :
- Jeu Awalé
- EcoSystem
- MySudoku

Avatar de pac
Inscrit : 08/04/2004
Messages : 6570
Message
#125319
Posté le 23/02/07 à 20:22
Il faudrait que tu réexpliques ce que tu souhaites faire.
Merci d'utiliser les balises [ CODE ] [ /CODE ] pour encadrer ton code.
Avant de le donner brut de fonderie, expliques le principe de fonctionnement.

Veux-tu stocker les valeurs dans des variables, dans des fichiers ? Leur nombre est fixe, variable ?
__________________________
Lisez la charte, pensez à regarder la FAQ, les tutoriaux, l'annuaire et faites une recherche dans les forums.
N'oubliez pas le Tag [Résolu]Image.

Initiez-vous à Delphi avec Turbo Delphi Explorer, au C ou au C++ avec Code::Blocks et C# avec Visual C# 2005 Express.

HAUT DE PAGE

PROFIL MEMBRE LUI ECRIRE ALLER VOIR SON SITE

Blademan1
Membre régulier
Avatar de Blademan1
Inscrit : 02/09/2006
Messages : 86
Message
#125788
Posté le 01/03/07 à 08:55
SalutSmiley
Tu doit être beaucoup plus fort que moi, j\'ai pas tout compris ton scripte, mais je vais essayer de répondre (en espérant que je ne suis pa trop a coter de la plaque)
Comme je ne sais pas gérer les bases de données (et je suis meme pas sur que ma version les gèrent) je stock toutes mes infos dans un .txt à la racine du prog ou meme quelque par pommer sur lordi. Le prob c que tu dois faire dans ton prog une fonction qui retrouve les infos dans ton .txt et c long a faire...

SmileyChai pa se que tu en pense mais c comme sa que je fait et que sa a tjrs marcher avec moi lol.
Si ton delphi gèrent les bases de données, aprend a les utiliser, ou si nn fait comme moi.

mon adresse MSN si tu veu me parler (j\'aimerai bien t\'aider dans ton projet)
guillaumeb.69@hotmail.fr
__________________________
Blademan1

HAUT DE PAGE

PROFIL MEMBRE LUI ECRIRE 

pac
Co-Administrateur
Superviseur :
- Méthodologie.
Modérateur :
- Delphi
Chef de projet(s) :
- Jeu Awalé
- EcoSystem
- MySudoku

Avatar de pac
Inscrit : 08/04/2004
Messages : 6570
Message
#125789
Posté le 01/03/07 à 09:01
Salut Blademan1, si tu stockes tout dans des fichiers, je te conseille d'utiliser des fichier INI, Delphi propose des méthodes pour te faciliter le travail.
Tu peux facilement retrouver une section dans ton fichier, et les clés dedans.
Un fichier INI est découpé en section et dans chacune, il y a des couples Clé = Valeur.

Tu t'embêteras moins ainsi.
__________________________
Lisez la charte, pensez à regarder la FAQ, les tutoriaux, l'annuaire et faites une recherche dans les forums.
N'oubliez pas le Tag [Résolu]Image.

Initiez-vous à Delphi avec Turbo Delphi Explorer, au C ou au C++ avec Code::Blocks et C# avec Visual C# 2005 Express.

HAUT DE PAGE

PROFIL MEMBRE LUI ECRIRE ALLER VOIR SON SITE

Blademan1
Membre régulier
Avatar de Blademan1
Inscrit : 02/09/2006
Messages : 86
Message
#125931
Posté le 02/03/07 à 17:30
a ouia !
faudra que j'essai mai je sais pa faire, je v faire des recherches sur internet Smiley.
Si les .INI c'est comme tu di, sa ressemble beaucoup à une base de donné.
Si tu peu me trouver un tuto ou me montrer lexemple d'un script pour écrire dedans sa serai simpasSmiley
__________________________
Blademan1

HAUT DE PAGE

PROFIL MEMBRE LUI ECRIRE 

pac
Co-Administrateur
Superviseur :
- Méthodologie.
Modérateur :
- Delphi
Chef de projet(s) :
- Jeu Awalé
- EcoSystem
- MySudoku

Avatar de pac
Inscrit : 08/04/2004
Messages : 6570
Message
#125933
Posté le 02/03/07 à 17:41
Un exemple :

procedure FichierIni; var FichierIni : TIniFile; begin FichierIni := TIniFile.Create( 'C:\Fichier.ini' ); // Test si une valeur existe if FichierIni.ValueExists( 'MaSection', 'MaValeur' ) then begin ShowMessage( 'La valeur est trouvée' ); ShowMessage( 'Elle vaut :' + FichierIni.ReadString( 'MaSection', 'MaValeur', 'Inexistante' ) ); FichierIni.WriteString( 'MaSection', 'MaValeur', 'Nouvelle valeur' ); end; end;

Il existe aussi ReadInteger, ReadFloat, ReadDate, ReadSection, ReadSections...
Et aussi leurs équivalents write, mais pour ça l'aide de Delphi et la complétion de code t'aideront bien mieux que moi.

Au fait, ce qu'ils appellent valeur, c'est la clé en fait dans le coupe clé/valeur.
Si valeur existe veut dire, si clé existe.

De la même manière, il existe des composants pour lire et écrire dans des fichiers au format XML qui publient des méthodes très pratiques.
__________________________
Lisez la charte, pensez à regarder la FAQ, les tutoriaux, l'annuaire et faites une recherche dans les forums.
N'oubliez pas le Tag [Résolu]Image.

Initiez-vous à Delphi avec Turbo Delphi Explorer, au C ou au C++ avec Code::Blocks et C# avec Visual C# 2005 Express.

HAUT DE PAGE

PROFIL MEMBRE LUI ECRIRE ALLER VOIR SON SITE

Blademan1
Membre régulier
Avatar de Blademan1
Inscrit : 02/09/2006
Messages : 86
Message
#125935
Posté le 02/03/07 à 18:03
ouaouuuu c super génial !!!
jesserai se soire, la chui en stage et je dois finir se qu'on ma demander de faire ( un bon programme ^^)
merci pac Smiley
__________________________
Blademan1

HAUT DE PAGE

PROFIL MEMBRE LUI ECRIRE 

Blademan1
Membre régulier
Avatar de Blademan1
Inscrit : 02/09/2006
Messages : 86
Message
#125994
Posté le 03/03/07 à 14:20
...Smiley marche pas, je doi avoir une version trop pourit

Esqu'il faudrai pas rajouter un uses ?

quand je fait

"var ini : TiniFile;"

Il me dit : 'TIniFile' non déclarer.
__________________________
Blademan1

HAUT DE PAGE

PROFIL MEMBRE LUI ECRIRE 

pac
Co-Administrateur
Superviseur :
- Méthodologie.
Modérateur :
- Delphi
Chef de projet(s) :
- Jeu Awalé
- EcoSystem
- MySudoku

Avatar de pac
Inscrit : 08/04/2004
Messages : 6570
Message
#126003
Posté le 03/03/07 à 16:53
Re, il existe une fonction super pratique, dans Delphi, ce qu'on appelle l'Aide, on accède à cette fonction en tappant F1.

Si on sélectionne un mot, puis qu'on active la fonction aide avec F1, on a l'aide de ce mot.

En faisant ainsi sur le mot TIniFile, j'ai une fenêtre qui a apparu qui me dit ceci :
Aide Delphi dit :
TIniFile stocke et lit les informations et des paramètres propre à une application à partir de fichiers INI.

Unité
IniFiles

Unité indique dans quelle unité on trouve la fonction ou la classe, c'est donc cette unité qu'il faut rajouter dans la clause uses afin de pouvoir l'utiliser.

Désolé, je prends un ton un peu ironique pour t'inciter à aller plus souvent dans l'aide de Delphi, elle est très complète, simple et bien pensée, on y apprend beaucoup de choses dedans. Smiley
__________________________
Lisez la charte, pensez à regarder la FAQ, les tutoriaux, l'annuaire et faites une recherche dans les forums.
N'oubliez pas le Tag [Résolu]Image.

Initiez-vous à Delphi avec Turbo Delphi Explorer, au C ou au C++ avec Code::Blocks et C# avec Visual C# 2005 Express.

HAUT DE PAGE

PROFIL MEMBRE LUI ECRIRE ALLER VOIR SON SITE

Blademan1
Membre régulier
Avatar de Blademan1
Inscrit : 02/09/2006
Messages : 86
Message
#126023
Posté le 03/03/07 à 20:00
Smiley ouaou c gentil tou sa lol
Smileychui aller dans l'aide, mais mon prob c pa d'y aller plus souvent (car j'y vai quan meme souvent) mai cest de savoir l'utiliser Smiley

avant de poster g voulu voir si sa marquai de mettre un uses, et j'en est pas vu, et je te di merci car tu ma apri que unité voulait dire uses...
jessairai et je te dirai si sa marche et cette foi sa a interet ^^
merci @+
__________________________
Blademan1

HAUT DE PAGE

PROFIL MEMBRE LUI ECRIRE 
POSTER UN NOUVEAU SUJET REPONDRE A CE SUJET

PREMIERE PAGE

PAGE PRECEDENTE Page précédente

Page suivante

PAGE SUIVANTE DERNIERE PAGE

FORUM PASCAL



    PAGE : [1]



.: Site Web développé par Julien Pichot et l'équipe MPWG avec www.evolvia-web.com :.