codice:
program indovinalo;
uses wincrt;
var numero,prova,tentativi,i,manche:integer;
    a,b,ta,tb,err,risultante,resultscontenuto,stringa:string;
    f:text;
    scelta:char;
begin;
clrscr;
a:=('Il numero e` un po` alto.. prova un po` di meno..');
b:=('Il numero e` un po` basso.. prova un po` di piu`..');
ta:=('Il numero e` TROPPO alto.. prova dalle 10 cifre in meno..');
tb:=('Il numero e` TROPPO basso.. prova dalle 10 cifre in piu`..');
err:=('Il numero incognito e` minore di 100!!!');
randomize;
write('Quante manche vuoi fare? ');
readln(manche);
for i:=1 to manche do
begin;
writeln('');
writeln('Manche ',i,' di ',manche,' :');
numero:=random(100);
tentativi:=0;
repeat
assign(f,'RESULTS.txt');
reset(f);

while (not (Eof (f))) do
begin
read(f, stringa);
resultscontenuto:=(resultscontenuto+stringa);
end;

close(f);
writeln('');
write('Prova ad indovinare il numero.. ');
readln(prova);
if prova>100 then writeln(err) else
             if prova>numero+10 then writeln(ta) else
                                if prova>numero then writeln(a) else
                                                if prova<numero-10 then writeln(tb) else
                                                                   if prova<numero then writeln(b);
tentativi:=tentativi+1;
until prova=numero;
writeln('');
writeln('Congratulazioni.. L`hai azzeccato dopo ',tentativi-1,' tentativi.. il numero era ',numero,'!!!!!');
write('Inserisci il nick: ');
readln(risultante);
assign(f,'RESULTS.txt');
rewrite(f);
write(f, resultscontenuto,'');
write(f, '',risultante,' , ',(tentativi-1));
close(f);
end;
writeln('');
write('Vuoi visualizzare il database dei punteggi? [Y]es - [N]o ..');
readln(scelta);
assign(f,'RESULTS.txt');
reset(f);

while (not (Eof (f))) do
begin
read(f, stringa);
resultscontenuto:=(resultscontenuto+stringa);
end;

close(f);
case scelta of
'Y': writeln(resultscontenuto);
'y': writeln(resultscontenuto);
end;
repeat until keypressed;
end.
non mi funge.. scrive un bordello di volte la stessa riga!