Cum folosim fi ierele n pascal
This presentation is the property of its rightful owner.
Sponsored Links
1 / 12

Cum folosim Fişierele în Pascal ? PowerPoint PPT Presentation


  • 73 Views
  • Uploaded on
  • Presentation posted in: General

Cum folosim Fişierele în Pascal ?. învăţare prin p roiecte. “S ă învăţăm inteligent”. Să ne amintim. Care sunt componentele de memorie ale unui calculator ? Care sunt tipurile de memorie intern ă ? Care este principiul de func ţionare al memoriei interne ?

Download Presentation

Cum folosim Fişierele în Pascal ?

An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -

Presentation Transcript


Cum folosim fi ierele n pascal

Cum folosimFişiereleîn Pascal ?

învăţare prin proiecte

“Să învăţăm inteligent”


S ne amintim

Să ne amintim

  • Care sunt componentele de memorie ale unui calculator?

  • Care sunttipurile de memorie internă?

  • Care esteprincipiul de funcţionare al memoriei interne ?

  • Care esteunitatea de alocare a memorieişi multipli?

  • Care sunttipurile de memorie externă?


Ce este un fi ier

Ce este un fişier ?

Un fişier de dateeste o colecţie de date păstrate pe un suport extern, de exemplu HDD, CD, memorie flash etc. Fişierul reprezintă o structură de date externă, memorată în afara memoriei principale RAM a calculatorului.

Un fişier poate să conţină un program executabil sau date (fişier document).

În limbajul Pascal pot fi folosite:

- fişiere TEXT

- fişiere cu TIP

- fişiere generale, fără tip

Fişiere text în Pascal

Cele mai folosite fişiere în Pascal sunt fişierele TEXT. Aceste fişiere sunt organizate ca şiruri de caractere, scrise pe mai multe linii. Fiecare linie de text are un marcaj de sfârşit de linie, iar la sfârşitul fişierului există un marcaj de sfârşit de fişier.

La fel ca în cazul datelor din memoria internă, fişierele pot fi :

fişiere de intrare, care conţin date de intrare pentru programşi

fişiere de ieşire, care conţin rezultatele programului.

  • Numeleunui fişier este de forma Nume.tip, unde tip ne arata dacă fişierul este executabil Nume.exesauaplicatia folosită pentru prelucrarea fişierului, de ex. Nume.doc, Nume.jpg


Etapele folosirii unui fi ier

Etapele folosirii unui fişier

  • Pentru a folosi un fişier text trebuie parcurse etapele:

    1. declararea variabilei text f

    2. asocierea variabilei f cu un fişier extern

    3. deschiderea fişierului dat prin variabila f

    4. folosirea fişierului f pentru citire/scriere

    5. alte prelucrări asupra fişierului

    6. închiderea fişierului f


Opera ii cu fi iere

Operaţii cu fişiere

  • declararea variabilei fişier, folosind cuvântul rezervat TEXT:

    var f: TEXT;

  • asocierea variabilei f unui fişier extern:

    ASSIGN(f,’nume.tip’);

    Ex: assign(f,’date.in’);

  • deschiderea fişierului dat prin variabila f prin una din procedurile:

    RESET(f); - deschidere numaipentru citiredin fişier, de la începutul fişierului, este folosită pentru fişiere de intrare (READsauREADLN)

    REWRITE(f); deschidere numai pentru scriereîn fişier, folosită pentru fişiere de ieşire; creează un fişier vid (WRITEsauWRITELN)

    APPEND(f); deschidere pentru adăugarela sfârşitul fişierului;


Opera ii cu fi iere1

Operaţii cu fişiere

  • Utilizarea fişierului prin:

    - prin operaţia de citire: READ(f, lista_var);

    sau READLN(f,lista_var);

    - prin operaţia de scriere: WRITE(f,lista_var);

    sau WRITELN(f,lista_var);

    - funcţiile de informare:

    -testul de sfârşit de linie EOLN(f); funcţie booleană

    Returnează TRUEdacă s-a citit sfârşitul de linie din fişier

    - testul de sfârşit de fişier EOF(f); funcţie booleană

    Returnează TRUEdacă s-a citit caracterul sfârşit de fişier (CTRL/Z)

  • Redenumirea unui fişier RENAME(f,’nume_nou.tip’);

    Ştergerea fizică a fişierului de pe disc ERASE(var f);

    Trunchierea conţinutului unui fişier TRUNCATE(var f);

  • Închiderea fişierului: CLOSE(f);

  • ATENŢIE: după operaţia de închidere a fişierului nu mai pot fi apelate operaţiile pentru utilizare în afară de RENAME şi ERASE.


Structura fi ierelor text

Structura fişierelor text

  • Prelucrarea fişierelor text se poate face, la fel ca în cazul şirurilor de caractere, global – pe linii de text sau caracter cu caracter.

  • Fişierele text sunt împărţite în linii de text (de tip string), care au un marcaj de sfârşit de linie<EOLN>. La sfârşitul fişierului se afla marcajul <EOF>

  • La deschiderea fişierului se poziţionează indicatorul de fişier (IF) corespunzător procedurii de deschidere: la început (REWRITE/RESET) sau la sfârşit (APPEND)

  • Date.txt

    Prima linie de text  <EOLN>

    A doualinie<EOLN>

    <CTRL+Z><EOF>


Exemplu crearea unui fi ier text

Exemplu: crearea unui fişier text

program txt1;

var   f:text;{declararea variabilei fişier text}

      a:string;{linia de text}

begin

assign(f,‘date.txt'); {asocierea cu fisierul extern}

rewrite(f);{ crearea fisierului - iniţializare fişier vid }

   while not eof (input) do { cat timp nu am citit marcajul EOF }

   begin

      readln(a); { citesc linia de la tastatura }

writeln(f,a){scriu linia de text în fişier }

   end;

close(f) { închid fişierul – ultima operaţie cu fişierul f !}

end.


Exemplu afi area unui fi ier text

Exemplu: afişarea unui fişier text

program txt2;

varf:text;{declarareavariabilei fişier text}

      a:string;{linia de text}

begin

assign(f,‘date.txt'); {asocierea cu fisierul extern}

reset(f);{deschiderepentrucitire }

   while not eof(f) do { cat timp nu am cititmarcajul EOF }

   begin

readln(f, a); { citesclinia din fisier}

writeln(a) {scriulinia de text peecran}

   end;

close(f) { închid fişierul – ultima operaţie cu fişierul f !}

end.


Suma a dou numere

Suma a două numere

Calculaţi suma a două numere naturale, citite de pe prima linie din fişierul de intrare date.in iar rezultatul se va scrie în fişierul date.out.

program nr_text;

varf,g:text;{declarareavariabilelorfişier text}

a,b,S:integer;{ a,b – date de intrare, S - rezultat}

begin

assign(f,‘date.in'); reset(f);{ fişierul de intrare, deschis pt citire }

assign(g,‘date.out'); rewrite(f); { fişierul de ieşire, deschis pt scriere}

readln(f, a,b); { citescnumerele din fisier}

S:=a+b; { calculezsuma }

writeln(g, ‘S=‘,S); {scriurezultatulîn fişierul g }

close(f) ; { închid fişierul f ! }

close(g) ; { închid fişierul g ! }

end.


Probleme propuse

Probleme propuse

  • Se dă fişierul de intrare date.txt.

  • afişaţi pe ecran liniile fişierului

  • după fiecare linie afişaţi lungimea liniei (nr. de caractere)

  • iar la sfârşit numărul total de linii şi nr total de caractere

  • cea mai lungă linie de text din fişier

  • Se citesc trei numere a, b, c de pe prima linie a fişierului date3.in. Să se scrie în fişierul date3.out suma numerelor, media aritmetică şi media armonică fiecare rezultat pe câte o linie.

  • Citiţi elementele unui vector din fisierul de intrare vector.in în cazurile:

  • elementele sunt scrise toate pe prima linie

  • elementele sunt scrise câte unul pe o linie

  • pe prima linie este scris nr de elemente, iar pe a doua linie toate elementele vectorului

  • pe prima linie este nr de elemente, iar pe următoarele n linii câte un element


Cum folosim fi ierele n pascal

Succes !


  • Login