Sunteți pe pagina 1din 10

INFORMATICA, clasa a XI-a, profilul umanist

PROIECT DIDACTIC nr. 10


Autor: Bliuc Elena, profesoară de informatică

Datele generale. ___________, clasa a XI-a, profilul umanist, Informatică.


Modulul: Tipuri de date structurate.
Subiectul lecției: Fișiere text.
Tipul lecției: de dobândire și aplicare a cunoștințelor.
Standardul de eficiență a învățării informaticii:
• Utilizarea tipurilor de date.
Unități de competențe:
• Elaborarea programelor PASCAL utilizând tipul de date fișier.
Obiective operaționale:
La finele lecției elevii vor fi capabili:
O1 - să numească modalitățile de citire/scriere a fișierelor text;
O2 - să prezinte definirea tipului de date fișier text;
O3 - să numească procedurile destinate prelucrării elementelor EOL;
O4 - să numească fișierele text predefinite utilizate pentru introducerea și extragerea datelor;
O5 - să elaboreze programe utilizând tipul de date fișier.
Strategii didactice:
• formele de organizare: frontală, individuală;
• metodele, procedeele și tehnicile didactice: conversația; expunerea; explicația; exercițiul; analiza;
problematizarea;
• mijloacele didactice: manual la informatică, tabla; fișe; calculatoare.
Strategii de evaluare: evaluare formativă interactivă.
Locul desfăşurării: laboratorul de informatică.
Bibliografie:
• Curriculum Naţional. Disciplina Informatică. Clasele a X-a – a XII-a. Aprobat la Consi- liul Național pentru
Curriculum din cadrul Ministerului Educației, Culturii și Cercetă- rii al Republicii Moldova, proces-verbal
nr. 22 din 5 iulie 2019.
• Ghid de implementare a curriculumului disciplinar la Informatică (2019).
• Gremalschi A., Ciobanu I., Ivanov L., Prisăcaru A. Referenţial de evaluare. Disciplina Informatică //
Referenţialul de evaluare a competenţelor specifice formate elevilor. Institutul de Științe ale Educației,
Chișinău, 2014.
• Gremalschi A., Mocanu Iu., Gremalschi L.. Informatica. Manual pentru clasa a XI-a, Știința, Chișinău,
2020.
SCHIŢA DEMERSULUI DIDACTIC

I. EVOCARE (5-10 minute)

1. Organizarea clasei. Organizarea clasei (salutul elevilor, evidențierea prezenței, disponibilitatea


mijloacelor didactice).
2. Captarea atenției:
a) Se ne amintim!
https://learningapps.org/display?v=pegy1uq2k21

Răspunsuri corecte:

II. REALIZAREA SENSULUI (20-30 de minute)

3. Comunicarea subiectului lecției şi a obiectivelor


Profesorul:
 Anunță și scrie pe tablă subiectul: Fișiere text.
 Anunță obiectivele lecției.
 Prezintă conținutul informațional al lecției.
Pentru a facilita interacţiunea dintre om şi sistemul de calcul, în limbajele de nivel înalt informaţia
destinată utilizatorului se reprezintă în formă de fişiere text. Un fişier text este format dintr-o secvenţă de
caractere divizată în linii (fig. 1.9). Lungimea liniilor este variabilă. Sfârşitul fiecărei linii este indicat de un
element special, notat EOL (End Of Line – sfârşit de linie).
În cadrul disciplinei şcolare Informatica se studiază următoarele modalităţi de scriere/citire a fişierelor
text:

De exemplu, presupunem că fişierul de intrare conţine următoarele date:

Fişierul de intrare conţine numărul întreg 82, numărul real 3,14 şi şirul de caractere ACCEPTAT.
Prelucrarea acestui fişier la nivel de caractere constă în citirea consecutivă a fiecăruia dintre caracterele
ce se conţin în el:

şi depunerea lor în variabilele de tip char din program. În continuare, programatorul va trebui să scrie
suplimentar o secvenţă de instrucţiuni care transformă caracterele citite în valorile de care el are nevoie.
Prelucrarea aceluiaşi fişier la nivel de lexeme constă în citirea caracterelor din fişierul de intrare şi
gruparea acestora în trei lexeme:

Ulterior, lexemele astfel obţinute sunt în mod automat transformate în reprezentarea internă şi depuse
în variabilele de tipul respectiv: integer, real şi şir de caractere.
În limbajul PASCAL, un fişier text se defineşte printr-o declaraţie de forma:
var f : text;
Fişierele de tip text pot fi prelucrate cu ajutorul procedurilor cunoscute, aplicabile oricărui tip de fişiere:
assign, reset, rewrite, read, write, close. În completare, limbajul PASCAL include proceduri speciale, destinate
prelucrării elementelor EOL:
writeln(f)– înscrie în fişier elementul EOL (sfârşit de linie);
readln(f)– trece la linia următoare.
Sfârşitul de linie este semnalat de funcţia booleană eoln(f ), care ia valoarea true după citirea ultimului
caracter din linie.
Pentru introducerea și extragerea datelor, de regulă, se utilizează fișierele text predefinite:
- Input – destinat numai pentru citire și este asociat cu fișierul de intrare al sistemului de operare (tastatura);
- Output - destinat numai pentru operații de scriere și este asociat cu fișierul-standard de ieșire al sistemului de
operare (ecranul).

Activitatea elevilor: Elevii notează pe caiete conținutul noii lecții. Urmăresc explicațiile.
4. Explorarea informațiilor prezentate, observarea şi reflecția.
Elevilor li se propune să rezolve următorul exercițiu:
Fie dată o secvență de program PASCAL din Analizați secvența din programul P4 și
care au fost radiate procedurile destinate îndepliniți următoarele sarcini:
prelucrării datelor de tip fișier: • Alegeți din lista de mai jos și înscrieți în textul
Program P4; programului denumirea de tip omisă astfel încât
var a, b, p : integer; acestea să asigure corectitudinea executării
f : _______; instrucțiunilor din program:
begin
- integer
assign (f, ’produs.txt’);
- text
rewrite(___);
a:=5; b:=10; - string
read(f, a, b); • Subliniați în textul programului P4 operația de
p:=a*b; asociere a fișierului f cu fișierul extern.
write(f, p); • Completați spațiile libere cu elementele care
_______(f); lipsesc.
readln;
end.

III. REFLECŢIE (5-7 minute)

5. Prezentarea/valorificarea experienței concrete. Elevilor li se propun câteva sarcini, a căror realizare


presupune utilizarea informațiilor studiate/cunoscute.
a) Activitate în grup. Elevilor li se propune să rezolve următorul exercițiu:
Fișierul ”date.in” conține 3 numere reale. De înscris în fișierul ”date.out” media aritmetică a acestor
numere și unul dintre cuvintele ADMIS sau RESPINS (dacă media >=5 va fi admis, dacă media <5 va fi
respins). (programul este salvat pe laptop cu numele fisier-media)

b) Activitate în grup. Elevilor li se propune să rezolve următorul exercițiu:


Fișierul ”numere.in” conține în fiecare linie câte 2 numere întregi. De înscris în fișierul ”pare.out”
numerele pare din primul fișier, iar în fișierul ”impare.out” numerele impare din primul fișier.
(programul este salvat pe laptop cu numele fisier-pare)
c) Activitate în grup. Elevilor li se propune să lanseze în execuție programul P98 de la pagina 90.
Program P98; { Asocierea fişierului FN cu consola } 
type FisierNumere = file of integer; 
var FN : FisierNumere; 
i : integer; 
begin 
assign(FN, ’CON’); 
rewrite(FN); 
i:=1; write(FN, i); 
i:=2; write(FN, i); 
i:=3; write(FN, i); 
close(FN); 
readln; 
end.
Rezultatul execuției:

d) Elevilor li se propune să modifice programul P98 astfel încât să obțină următorul rezultat
(i:= 3, i:=4, i:=5, i:=6)

6. Evaluarea lecției. Autoaprecierea, reflecția


Elevilor li se propune să formuleze concluzii, redând anumite emoții, trăiri, impresii acumulate la sfârșitul
orei, relatând:
 Cel mai curios lucru aflat la această oră.
 Cea mai interesantă informație aflată.
 Un lucru știut înaintea lecției.
 Un aspect încă neînțeles.
 Curiozitate rămasă.
 Întrebare.
 Rugăminte/solicitare.

IV. EXTINDERE (2-4 minute)


7. Temă pentru acasă:
a) Studierea paragrafului 1.9 „Fișiere text” de la pagina 78.
b) Exercițiiul 2 pagina 89 și exercițiul 10 pagina 90.
Răspunsuri la exerciții
1. EXERSEAZĂ! Desenaţi o schiţă care redă structura unui fişier text. Explicaţi destinaţia fiecărui
element grafic al schiţei respective.

2. ANALIZEAZĂ! Se consideră următorul fişier text de intrare:

Explicaţi cum vor fi citite datele din acest fişier şi ce transformări vor avea loc în cazul următoarelor
prelucrări: (a) la nivel de caractere; (b) la nivel de lexeme.
Fișierul de intrare conține șirul de caractere Date, numărul real 9.8, numărul întreg 12, numărul real 23.67
și șirul de caractere STOP.
Citim consecutiv fiecare caracter
D a t e 9 . 8 1 2 2 3 . 6 7 S TO P
Grupăm datele în 5 lexeme:
Date 9. 12 23.67 STOP
8

3. ANALIZEAZĂ! Se consideră următorul fişier text de intrare: 

Explicaţi cum vor fi citite datele din acest fişier şi ce transformări vor avea loc în cazul următoarelor
prelucrări: (a) la nivel de caractere; (b) la nivel de lexeme.

4. CREEAZĂ! Daţi exemple de fişiere de intrare ce conţin datele iniţiale ale unei probleme din fizică şi
ale alteia din biologie şi descrieţi procesul de citire a datelor din ele la nivel de caractere şi la nivel de
lexeme.

5. ANALIZEAZĂ! Care este diferenţa dintre prelucrarea unui fişier text la nivel de caractere şi
prelucrarea aceluiaşi fişier la nivel de lexeme? Daţi exemple de algoritmi ce necesită implementarea prin
prelucrări la nivel de caractere şi prelucrări la nivel de lexeme.
    

6. ÎNVAŢĂ SĂ ÎNVEŢI! Pornind de la cele două modalităţi de citire a fişierelor de intrare la nivel de
caractere şi la nivel de lexeme, explicaţi modalităţile respective în cazul fişierelor text de ieşire. Daţi
exemple.

7. EXPLICĂ! Explicaţi semnificaţia elementelor EOL şi EOF. Cum sunt prelucrate aceste elemente?

8. EXPLICĂ! Explicaţi cum se efectuează scrierea şi citirea datelor în cazul fişierelor text. Care
proceduri/funcţii sunt utilizate în acest scop?
9. OBSERVĂ! Lansaţi în execuţie următorul program:
Program P98; { Asocierea fişierului FN cu consola } 
type FisierNumere = file of integer; 
var FN : FisierNumere; 
i : integer; 
begin 
assign(FN, ’CON’); 
rewrite(FN); 
i:=1; write(FN, i); 
i:=2; write(FN, i); 
i:=3; write(FN, i); 
close(FN); 
readln; 
end.
Explicați rezultatete afișate pe ecran.

Propun elevilor să modifice propgramul P98 pentru valorile lui i: 3, 4, 5, 6 (trebuie să mai adauge un i și
un writeln).

10. ANALIZEAZĂ! Se consideră fişierul logic f. Care din următoarele instrucţiuni destinate depistării
sfârşitului de fişier sunt corecte?

11. APLICĂ! Elaboraţi un program care afişează pe ecran conţinutul oricărui fişier text.
Program Ex11_pag91; 
var f : text; 
    c : string; 
begin 
assign(f, ’fisier1.txt’); 
reset(f); 
while not eof(f) do
begin
readln(f, c);
writeln(c);
end: 
close(f); 
readln; 
end.
12. REZOLVĂ! Elaboraţi un program care afişează pe ecran numărul de vocale dintr-un fişier text.
Program Ex12_pag91; 
var f : text; 
    i, c: integer;
    s : string; 
begin 
assign(f, ’VOCALE.TXT’); 
reset(f); 
c:=0;
for i:=1 to length(s) do
if (c=’a’)or (c=’e’) or (c=’i’) or (c=’o’) or (c=’u’);
write(f, c); 
close(f); 
readln; 
end.

13. PROGRAMEAZĂ! Datele de intrare ale unui program sunt înmagazinate într-un fişier text. Fiecare
linie a fişierului conţine două numere întregi şi trei numere reale separate prin spaţii. Elaboraţi un
program care afişează suma numerelor întregi şi suma numerelor reale din fiecare linie pe ecran.
14. PROGRAMEAZĂ! Datele de intrare ale unui program sunt înmagazinate într-un fişier text. Fiecare
linie a fişierului conţine trei numere reale separate prin spaţiu şi unul din cuvintele ADMIS, RESPINS.
Elaboraţi un program care: 
a) afişează conţinutul fişierului în studiu pe ecran; 
b) creează o copie de rezervă a fişierului; 
c) creează un fişier text liniile căruia conţin media celor trei numere reale din liniile respective ale
fişierului de intrare; 
d) afişează pe ecran liniile fişierului de intrare, precedate de numerele de ordine 1, 2, 3 ş.a.m.d.
(Acesp program: a) creează fișierul media.in, liniile căruia conțin 3 numere reale, b) creează fișierul
media.out, liniile căruia vor conține cele 3 nr reale din linia corespunzătoare a fișierului creat în punctual
a, media lor aritmetică și unul dintre cuvintele ADMIS, RESPINS. Cuvântul ADMIS va fi înscris în linia
în care media aritmetică a numerelor nu-I mai mică decât 5 și RESPINS în caz contrar).
Program Ex14_pag91; 
var f1, f2 : text; 
    a, b, c, med : real;
begin 
assign(f1, ’Media.in’); 
rewrite(f1); 
assign(f2, ’Media.out’);
rewrite(f2);
while not eof do begin
readln(a, b, c); {se citesc notele de la tastatura}
writeln(f1, a:5:2, b:5:2, c:5:2); {se inscriu notele in fisier}
end; 
close(f1)
reset(f1);
while not eof(f1) do
begin
readln(f1, a, b, c); {se citesc notele din f1}
med:=(a+b+c)/3  {se calculeaza media aritmetica}
write(f2, a:5:2, b:5:2, c:5:2) {se inscribe in f2}
if med>=5 then writeln(f2, ’ADMIS’) else
writeln(f2, ’RESPINS’);
end;
close(f1);
close(f2);
readln; 
end.
15. PROGRAMEAZĂ! Fiecare linie a unui fişier text conţine următoarele date, separate prin spaţii: 
– numărul de ordine (număr întreg); 
– numele (un şir de caractere ce nu conţine spaţii); 
– prenumele (un şir de caractere ce nu conţine spaţii); 
– nota la disciplina 1 (număr real); 
– nota la disciplina 2 (număr real); 
– nota la disciplina 3 (număr real). 
Elaboraţi un program care: 
a) creează o copie de rezervă a fişierului în studiu; 
b) afişează conţinutul fişierului pe ecran; 
c) creează un fişier text liniile căruia conţin următoarele date separate prin spaţii: 
– numărul de ordine (număr întreg); 
– numele (un şir de caractere ce nu conţine spaţii); 
– prenumele (un şir de caractere ce nu conţine spaţii); 
– nota medie (număr real); 
Fişierul creat în punctul c trebuie afişat pe ecran.

S-ar putea să vă placă și