Sunteți pe pagina 1din 5

Ministerul Educaiei al Republicii Moldova

Liceul Teoretic Republican Ion Creang, Bli

PROIECT DIDACTIC

Data: 11.03.2016
Disciplina: Informatica
Clasa: XI D
Profil: Umanist
Profesor: Rusnac Ecaterina
Unitatea de nvare: Subprograme
Tema: Proceduri
Tipul leciei: Lecia de integrare a cunotinelor
Varianta: Lecia de rezolvare a problemelor
Timpul acordat: 80 min
Locul de desfurare: laboratorul de informatic (cab. 647)
Competene specifice: CS5 - Aplicarea metodelor de algoritmizare, de formalizare, de analiz,
de sintez i de programare pentru soluionarea problemelor legate de prelucrarea automatizat a
informaiei. CS6 - Translarea algoritmilor frecvent utilizai ntr-un limbaj de programare de nivel
nalt.
Subcompetene:
Prelucrarea datelor cu ajutorul subprogramelor predefinite i a subprogramelor elaborate
de ctre utilizator.
Organizarea comunicrii ntre programul/subprogramul appellant i subprogramul apelat.
Proiectarea structural a algoritmului i a programului.
Obiectivele leciei: La finele leciei fiecare elev va fi capabil:
O1: s integreze resursele n cadrul unitii.
Tehnologii didactice:
a. Metode i procedee didactice: exerciiul.
b. Resurse materiale i digitale: sala de calculatoare, manual.
c. Forma de activitate: frontal, lucrul n grup.

Bibliografie:

1. Informatic, Curriculum pentru clasele a X-a a XII-a, Chiinu, tiina 2010;


2. A. Gremalschi. Informatic. Manual pentru clasa a XI-a. tiina 2014.

Desfurarea liciei
Etapele Obiectivele Activitatea profesorului Activitatea Not
leciei elevului
Evocare Salutul elevilor. Crearea climatului Salut profesorul;
favorabil pentru lecie. se pregtesc pentru
Verificarea temei pentru acas: lecie. Anexa 1
5 a), 6 a)

http://pas1.ru/taskarray Rspund la
ntrebri.

Prezint tema
pentru acas.
Reflecie Propun elevilor s rezolve din manual: Ies cte unu la tabl
p. 111, Nr. 1 a)b)c)d), 3 a)b)c) i rezolv
problemele
propuse. Ceilali
rezolv n caiete.
Extindere Tema pentru acas: Noteaz tema
4.5. p. 109; p. 111. Nr. 1 e)f)g), 3 pentru acas.
d)e)f), 4.

2
Anexa 1

Verificarea temei pentru acas: Nr. 5 a), p.13


Program P1;
var
a, b, c: real;
procedure sq (a,b,c: real);
var d, x1, x2: real;
begin
d := b * b - 4 * a * c;
if d >= 0 then begin
x1 := (-b + sqrt (d)) / (2 * a);
x2 := (-b - sqrt (d)) / (2 * a);
if x1 = x2 then
writeln ('x1 = ', x1:6:2)
else
writeln ('x1 = ', x1:6:2, '; x2 = ', x2:6:2)
end
else
writeln (' !')
end;
begin
write ('a = '); readln (a);
write ('b = '); readln (b);
write ('c = '); readln (c);
writeln (a:6:2,'x*x + ',b:6:2,'x + ',c:6:2,' = 0');
sq (a, b, c);
readln
end.

Nr. 6 a), p.13


Suma elementelor unui vector:
Program P3;
const n = 10;
var
arr: array[1..n] of integer;
sum: integer;
i: byte;
begin
i := 1;
sum := 0;
repeat
write (': ');
readln(arr[i]);
sum := sum + arr[i];
i := i + 1
until (arr[i-1] = 0) or (i > n);
for i := 1 to n do
write (arr[i],' ');
writeln;
writeln ('sum = ', sum);
readln
end.

Elementul maxim, minim i mediu dintr-un vector:


const
n=9;
var
m : array [0..n] of integer;

3
i : integer;
min, max : integer;
sr : real;
go: String;

begin
repeat

randomize;
for i := 0 to n do
m[i] := random (10)+1;

for i := 0 to n do
writeln ('m [', i,'] = ', m[i]);

min := m [0];
for i := 1 to n do
if m[i] < min then
min := m[i];
writeln ('min element is ', min);

max := m [0];
for i := 1 to n do
if m[i] > max then
max := m[i];
writeln ('max element is ', max);

sr := 0;
for i := 0 to n do
sr := sr + m[i];
writeln ('srednee zna4enie', (sr/(n+1)));

readln(go);
if go<>'' then

until go = '';

end.

Media aritmetic
program sss;
type mas=array[1..20] of integer;
var a:mas;
i,n,k:integer; sred:real;
Function sr(a:mas; n:integer):real;
var l:integer;
begin
for i:=1 to n do
l:=l+a[i];
sr:=l/n;
end;

begin
4
randomize;
writeln ('Vvedite razmer massiva: ');
readln (n);

for i:=1 to n do
a[i]:=random(20);
writeln('Ishodnii massiv: ');
for i:=1 to n do
write (a[i]:5);
writeln;
writeln ('Srednii arifmeticheskii= ',sr(a,n):5:2);
readln
end.

Suma i produsul elementelor unui vector:


const
max = 100;
var
arr: array[1..max] of real;
n: integer;
sum, op: real;
i: integer;

begin
write(' : ');
readln(n);

write(' : ');
for i := 1 to n do
read(arr[i]);

sum := 0;
for i := 1 to n do
sum := sum + arr[i];

op := 1;
for i := 1 to n do
op := op * arr[i];

writeln(' : ', sum:10:2);


writeln(' : ', op:20:2);

end.

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