👤

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ăspuns :

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: