fisiere text pascal

16
Fisiere text

Upload: lavinia-popa

Post on 16-Feb-2016

317 views

Category:

Documents


5 download

DESCRIPTION

informatica

TRANSCRIPT

Page 1: Fisiere Text pascal

Fisiere text

Page 2: Fisiere Text pascal

Introducere Programele prezentate anterior au

necesitat date de intrare care au fost preluate direct de la tastatura.

Aceasta maniera de lucru devine incomoda cand este vorba de un volum mare de informatii sau cand ele nu difera structural de la o executie a programului la alta

Page 3: Fisiere Text pascal

Pentru a evita acest neajuns s-a gasit solutia inregistrarii datelor de intrare pe un suport magnetic, de pe care pot fi citite direct prin program.

Page 4: Fisiere Text pascal

DefinitieNumim fisier, o colectie de informatii care satisfac un anumit scop, memorata pe un suport extern, si accesata printr-un nume (numele fisierului)

Page 5: Fisiere Text pascal

Fisiere textUn fisier text contine una sau mai multe

linii de caractere de lungime variabila.Fiecare rand, mai putin ultimul, se

incheie printr-un “marcaj de sfarsit de linie” alcatuit din caracterele CR si LF.

Sfarsitul de fisier este marcat prin caracterul EOF.

Page 6: Fisiere Text pascal

Operatii cu fisiere textIntr-un program, un fisier text se declara

ca o variabila de un tip predefinit numit “text”. O astfel de variabila se numeste descriptor de fisier.

ExempluVar f,g:text;

Page 7: Fisiere Text pascal

Pentru a putea folosi efectiv un fisier text intr-un program, trebuie facuta o legatura intre numele sub care este recunoscut de catre sistemul de operare(fisierul fizic) si descriptorul de fisier (fisierul logic)

Page 8: Fisiere Text pascal

SintaxaAssign(<descriptor>, <nume fisier>)

Ex. Assign(f, ‘numere.txt’)

Page 9: Fisiere Text pascal

Deschiderea si inchiderea unui fisier- Pentru citireReset(<descriptor>)- Pentru scriereRewrite(<descriptor>)- Pentru adaugareAppend(<descriptor>)- Pentru inchidereClose(<descriptor>)

Page 10: Fisiere Text pascal

Testarea sfarsitului de rand si de fisierTestarea sfarsitului de fisier- eof(<descriptor>)- seekeof(<descriptor>)Testarea sfarsitului de linie- eoln(<descriptor>)- seekeoln(<descriptor>)

Page 11: Fisiere Text pascal

Observatie Functia Seekeoln difera de functia

Eoln prin faptul ca face salt peste caracterele blanc sau TAB, inainte de a testa sfarsitul de linie

Functia Seekeof difera de functia Eof prin faptul ca face un salt peste caracterele blanc, TAB sau marcajele de sfarsit de linie, inainte de a testa sfarsitul de fisier

Page 12: Fisiere Text pascal

Citirea din fisierRead(<desc>,<v1>, <v2>,…)

Readln(<desc>, <v1>, <v2>,…)

Page 13: Fisiere Text pascal

Scrierea in fisierwrite(<desc>,<v1>, <v2>,…)

writeln(<desc>, <v1>, <v2>,…)

Page 14: Fisiere Text pascal

ExempluFisierul numere.text contine pe prima linie 3 numere. Sa se calculeze media lor aritmetica.

Page 15: Fisiere Text pascal

RezolvareProgram fisier;Var f:text;

a,b,c:integer;ma:real;

Beginassign(f, ‘numere.text’);reset(f);read(f,a,b,c);close(f);ma:=(a+b+c)/3;writeln(‘ma=‘,ma:5:2);

End.

Page 16: Fisiere Text pascal

Probleme propuseFisierul p1.in contine pe prima linie un

numar natural n iar pe urmatoarea linie n numere intregi separate prin spatii.