Newsgroup: it.comp.lang.pascal
Titolo: ============> Salvare in Pascal

Come faccio a salvare su file un qualsiasi dato ?
Facciamo un esempio semplice:
vorrei scrivere un programma che ogni volta mi chieda di inserire un numero
e, successivamente mi dica se questo è maggiore o minore di quello che ho
inserito l'ultima volta che ho eseguito lo stesso programma....
E' POSSIBILE?
Potete rispondermi  so 
dofr...@tin.it
  ? Mi eviterebbe lunghe ricerche.....
Grazie !
Simone.

Prima leggi, poi registri l'ultimo dato.
Per leggere e scrivere guarda l'help, istruzione Open.
A memoria potrebbe essere:
open "nomefile" for output as #1;
print #1, numero (per scrivere)
open "nomefile" for input as #1;
read #1, numero (per leggere)
Però non fidarti, leggi l'help.

Però non fidarti, leggi l'help.
 scusa , ma non e` vb?
che io sappia bisogna fare un assign della variabile al file, poi fare un
append o un rewrite ( se si vuole reinizializzare)
a memoria dovrebbe essere:
var f:text
var x:integer
assign(f,'file.txt');
rewrite(f); (oppure append(f);)
writeln(f,x);
close(f);
controlla l`help su voce assign, append, rewrite
Ciao
P4E

Mammamia, che @!@@@""!! ho detto!!!
Con tutti 'sti linguaggi ogni tanto li mescolo.
Pardon, è sicuramente corretto il tuo.

 wrote in message 7q190e$c3c$2...@nslave1.tin.it...

Eccoti servito !!!
Program Salva_Dato;
type f = file of longint;
var a, d : longint;
    b : string;
    Esiste : Boolean;
    f1 : f;
 Function FilSrc(s : string) : Boolean;
            { Verifica se un file esiste Restituisce TRUE se il file esiste
                                         FALSE in caso contrario  }
     Var
       f : file ;
     Begin
       FilSrc := True;
       Assign(f,s) ;
       {$I-} { Elimina lo STOP provocato da un errore di I/O in fase
RUN-TIME }
       Reset(f) ; { In assenza del file la procedura Reset(f) genera un
IOResult}
       {$I+} { Ripristina le normali condizioni operative del compilatore }
       If IOResult = 0 Then Close(f)   Else FilSrc := False;
     End; { FilSrc }
BEGIN
  b := 'fildat.dat'; { nome del file dati }
  Assign(f1,b);
  Esiste := FilSrc(b);
  If Esiste
    Then
      Begin
        Reset(f1);
        Read(f1,a);
      End
    Else  Rewrite(f1);
  Write('Dammi un numero (intero max 9 cifre) : '); Readln(d);
  If Esiste
    Then
      Begin
        If d > a Then Writeln(d,' e maggiore di       ',a,' (dato
memorizzato)')
                 Else Writeln(d,' e minore o uguale a ',a,' (dato
memorizzato)');
      End
     Else  Writeln('Prima volta che si esegue il programma !!');
   Seek(f1,0);   { parto inizio del file }
   Writeln('Ora memorizzo il dato : ',d);
   Write(f1,d);
   Close(f1);
   Readln;
END.
Innanzitutto in Pascal di dati ne esistono di vario genere:
dati numerici (byte da 0 a 255; interi da -32000 a + 32000, reali ossia
numeri con la virgola o meglio il punto 18.75, longint da -2 miliardi a + 2
miliardi);
caratteri ( lettere da A alla z, cifre da 0 a 9 ecc.);
stringhe di caratteri (il tuo nome 'SIMONE' oppure il mio 'CLETO')
valori Booleani (variabili che possono aasumere il valore VERO (true in
Pascal) o FALSO (false in Pascal)
....
....
Nel programma ho scelto dati longint ossia numeri da - 2 miliardi massimo
negativo a + 2 miliardi massimo positivo.
Su disco i dati (qualunque tipo essi siano) vengono memorizzati sotto forma
di archivio (file). Un file è caratterizzato da un nome (in Pascal una
stringa di caratteri) nel nostro caso 'FILDAT.DAT' che in ambiente DOS è
costituita da un massimo di 8 caratteri seguiti da un punto e da tre
caratteri che vengono chiamati estensione (nostro caso DAT per individuare
la natura ossia i DATI del programma).
La prima cosa da fare è usare istruzione Assign che assegna ad una variabile
del PASCAL (f1 nel nostro caso) la variabile DOS che contiene il nome per
esteso del file 'FILDAT.DAT').
Quando lancio il programma con il RUN del Pascal, il mio file dati non
esiste allora lo devo creare da zero con l'istruzione Rewrite(f1); si dice
che il file è aperto in scrittura ossia per scriverci sopra. l'istruzione
Write(f1,d) quartultima del listato scrive il dato d (intero longint) sul
file f1  ( di tipo f ossia file of longint) .
Quando lancio il programma la seconda la terza o la decima volta il mio file
dati esiste allora lo devo aprire in lettura usando l'istruzione Reset(f1)
poi devo leggere il dato in precedenza memorizzato il dato si chiama a e
l'istruzione Read(f1,a) trasferische il dato letto da disco nella variabile
a. Quando ho terminato di leggere o di scrivere devo chiudere il colloquio
con l'unità a dischi con Close(f1).
Penso per oggi possa bastare.
Se hai qualche altro dubbio scrivimi
Cleto Azzani
IPSIA MORETO BRESCIA
cl...@numerica.it