Se consideră tablou liniar (1...100)
De numere întregi. Scrie un program pascal utilizînd procedura care va calacula suma si produsul elementelor pozitive.
Răspunsuri la întrebare
Răspuns:
program suma_produs;
var a:array[1..100] of integer;
i, n, suma, produs:integer;
{Definim procedura s_p care primeste ca parametru un element al vectorului si calculeaza suma si produsul}
procedure s_p(x:integer; var s, p:integer);
begin
s:=s+x;
p:=p*x;
end;
{Intram in programul principal}
begin
write('Dati numarul de elemente al vectorului : ');
readln(n);
{Citim elementele vectorului}
for i:=1 to n do
begin
write('a[',i,']=');
readln(a[i]);
end;
{Initializam suma si produsul}
suma:=0;
produs:=1;
{Parcurgem vectorul si, daca elementul este pozitiv
apelam procedura s_p, care actualizeaza suma si produsul}
for i:=1 to n do
if a[i] > 0 then
s_p(a[i], suma, produs);
{Afisam rezultatele}
writeln('Suma elementelor pozitive este : ',suma);
writeln('Produsul elementelor pozitive este : ',produs);
readln;
end.
Explicație: