{ File: somfile.pas } { Scopo: lettura da un file di testo che contiene numeri interi } program SommaInteriDaFile; { Stampa la somma dei numeri interi contenuti in un file di testo, e il loro numero. Calcola correttamente il numero di interi solo se nel file di input, dopo l'ultimo intero NON CI SONO spazi o CR. } var dato, { dato letto di volta in volta } quanti, { numero di dati letti } somma : integer; { somma dei dati letti } fileinput : text; begin assign(fileinput, 'INTERI.TXT'); reset(fileinput); somma := 0; quanti := 0; while not eof(fileinput) do { ATTENZIONE: Calcola correttamente il numero di interi solo se nel file di input, dopo l'ultimo intero NON CI SONO spazi o CR. In caso contrario, NON rileva immediatamente l'EOF, ed esegue un'iterazione in piu'. } begin read(fileinput, dato); somma := somma + dato; quanti := quanti + 1 end; close(fileinput); writeln('Ho letto ', quanti, ' dati.'); writeln('La somma dei dati vale ', somma) end. { SommaInteriDaFile }