mentral
Messages postés56Date d'inscriptionjeudi 29 mai 2003StatutMembreDernière intervention22 janvier 2008
-
14 sept. 2003 à 12:30
zulot
Messages postés39Date d'inscriptiondimanche 23 mai 2004StatutMembreDernière intervention20 mai 2007
-
15 sept. 2004 à 23:27
Bonjour,
Il me faudrait un algo pour ouvrir un fichier texte, lire une ligne dont le numéro est choisi au hasard par un random, et affecter cette ligne à une variable string.
yvemoreau
Messages postés308Date d'inscriptionmardi 11 juin 2002StatutMembreDernière intervention26 septembre 2008 15 sept. 2003 à 00:47
function bidon(Fichier:String):String;
var
x,NombresLIgnes:Integer;
F:TextFile;
begin
result:='';
try
assignFile(F,Fichier);
{$I-}
Reset(F);
{$I+}
if(IOResult=0)then
begin
NombresLignes:=0;
while not EOF(F)do
begin
ReadLn(F,result);
inc(NombresLignes);
end;
ReSet(F);
Randomize;
x:=random(NombresLignes)+1;
NombresLignes:=0;
while NombresLignes<>x do
begin
ReadLn(Fichier,result);
inc(NombresLignes);
end;
end;
finally CloseFile(F);
end;
end;
soit tu débutes ou soit n'aimes pas te casser la tête !
japee
Messages postés1727Date d'inscriptionvendredi 27 décembre 2002StatutModérateurDernière intervention 6 novembre 20218 15 sept. 2003 à 09:31
On peut pas faire plus simple et efficace...
Juste une petite erreur (de saisie sans doute) à signaler dans la 3ème partie de ton code, concernant la lecture de la ligne x tirée au hasard.
Tu écris :
mentral
Messages postés56Date d'inscriptionjeudi 29 mai 2003StatutMembreDernière intervention22 janvier 2008 17 sept. 2003 à 21:26
Bonjour Yves,
Avant toute chose merci pour ta réponse. En fait j'avais déjà fait un algo mais il ne marchait pas. Je crois que c'est parce que j'avais oublié "Reset(F)", élément dont je ne comprends toujours pas la présence d'ailleurs...
Mais maintenant cette fonction marche et c'est l'essentiel...