Se da programul:
type Data = record
Ziua:1..31;
Luna:1..12;
Anul:integer;
end;
Persoana = record
NumePrenume:string;
DataNasterii:Data;
end;
ListaPersoane = array [1..50] of Persoana;
Elaborati un program care citeste de la tastatura datele referitoare la n persoane (n≤50) si afiseaza pe ecran:
a) persoane nascute in ziua z a lunii;
b) persoane nascute in luna l a anului;
c) persoane nascute in anul a;
d) persoane nascute pe data z.l.a.
Răspunsuri la întrebare
program ex4pag22clasa10;
type Data=record
ziua: 1..31;
luna: 1..12;
anul: integer;
end;
Persoana=record
NumePrenume: string;
DataNasterii: Data;
end;
ListaPersoane=array[1..50] of Persoana;
var n, i, z, l, a, nrzi, nrluna, nranul, nrzla: integer;
T: ListaPersoane;
begin
write('introdu nr de persoane: n= '); read(n);
writeln(' introdu date despre ',n,' persoane:');
for i:=1 to n do
begin
writeln('Dati datele persoanei ', i);
write('Nume Prenume: '); readln(T[i].NumePrenume);
writeln('Dati datele nasterii: ');
write('ziua nasterii: '); readln(T[i].DataNasterii.ziua);
write('luna nasterii: '); readln(T[i].DataNasterii.luna);
write('anul nasterii: '); readln(T[i].DataNasterii.anul);
writeln;
end;
writeln('introdu data calendaristica: ziua, luna, anul');
write(' ziua = '); readln(z);
write(' luna = '); readln(l);
write(' anul = '); readln(a);
for i:=1 to n do
begin
if T[i].DataNasterii.ziua = z then inc(nrzi);
if T[i].DataNasterii.luna = l then inc(nrluna);
if T[i].DataNasterii.anul = a then inc(nranul);
if (T[i].DataNasterii.ziua = z)and(T[i].DataNasterii.luna = l)and
( T[i].DataNasterii.anul = a) then inc(nrzla);
end;
writeln(' Raspuns:');
writeln('a) in ziua ',z,' s-au nascut ',nrzi,' persoane');
writeln('b) in luna ',l,' s-au nascut ',nrluna,' persoane');
writeln('c) in anul ',a,' s-au nascut ',nranul,' persoane');
writeln('d) pe date de ',z,'.',l,'.',a,' s-au nascut ',nrzla,' persoane');
end.
inc este scurtatura a cuvantului incrementing ( se traduce creste)