Informatică, întrebare adresată de gaby3152, 8 ani în urmă

Se considera tabloul A[1..n] de numere reale,n<=100.
Sa se scrie un program care modifica tabloul in felul urmator:elementele negative le inlocuieste cu elementul maxim,elementele pozitive-cu media aritmetica a tuturor elementelor ,iar elementele nule-cu 100.
PASCAL

Răspunsuri la întrebare

Răspuns de gafencumihaioydupx
1
program inlocuire;

type vector = array[1..100] of real;

var v:vector;
n,i:integer;
max,s,media:real;

begin

repeat
write('n=');readln(n);
until (n<=100);

for i:=1 to  n do
begin
 write('v[',i,']=');readln(v[i]); end;

{determinare maxim}
max:=v[1];
for i:=2 to n do
if(max<v[i]) then max:=v[i];

s:=0;
for i:=1 to n do
s:=s+v[i];

{media artmetica}
media:=s/n;

for i:=1 to n do
begin
   if(v[i]<0) then v[i]:=max
   else if (v[i]>0) then v[i]:=media
   else v[i]:=100;
end;

for i:=1 to n do
write(v[i],' ');

readln;
end. 

Alte întrebări interesante