1. Fie dat tabloul unidimensional b[1..20],n apartine R.
a)de determinat media aritmetica a elementelor pozitive.
b)de determinat elementul minim si locul lui.
a)de determinat media aritmetica a elementelor pozitive.
b)de determinat elementul minim si locul lui.
Program P1;
uses crt;
type tab=array[1..20] of real;
var a:tab;
min,med,s:real;
locul,n,i,k:integer;
begin
ClrScr;
writeln('n='); readln(n);
writeln('Dati elementele tabloului:');
for i:=1 to n do read(a[i]);
{determinarea mediei aritmetice a elementelor pozitive}
s:=0; k:=0;
for i:=1 to n do
if a[i]>0 then
begin
k:=k+1;
s:=s+a[i];
end;
if k=0 then write('media aritmetica nu poate fi determinata')
else write('media:',s/k:8:2,' ');
{determinarea elementului minim si locul lui}
min:=a[1]; locul:=1;
for i:=2 to n do
if a[i]<min then
begin
min:=a[i]; locul:=i;
end;
write('min=',min:5:2,' ','locul=',locul);
readln;
end.
2. De alcatuit un tablou unidimensional in care toate elementele maxime se inlocuiesc cu zero.
Program P2;
type tab=array[1..20] of integer;
var a:tab;
max,n,i:integer;
begin
write('n='); readln(n);
write('dati elementele tabloului:');
for i:=1 to n do
read(a[i]);
{determinarea elementelor maxime}
max:=a[1];
for i:=2 to n do
if a[i]>max then max:=a[i];
{inlocuirea elementelor maxime cu zero}
for i:=1 to n do
if a[i]=max then a[i]:=0;
write('max=',max);
writeln('tabloul obtinut:');
for i:=1 to n do
write(a[i]);
readln;
end.
3. Fie date tablourile a[1..5] si b[1..7], de creat tabloul care va contine elementele din a dupa care din b, in ordinea aparitiei.
Program P3;
type tab=array[1..12] of real;
var a,b,c:tab;
i:integer;
begin
write('introduceti elementele tabloului a:');
for i:=1 to 5 do read(a[i]);
write('introduceti elementele tabloului b:');
for i:=1 to 7 do read(b[i]);
{inscrierea elementelor tabloului a in c}
for i:=1 to 5 do
c[i]:=a[i];
{inscrierea elementelor tabloului b in c}
for i:=6 to 12 do
c[i]:=b[i-5];
write('tabloul c:');
for i:=1 to 12 do
write(c[i]:5:2);
readln;
end.
4. Fie dat tabloul a[1..100] of real, de inlocuit toate elementele pozitive prin 1, iar cele negative prin(-1).
Program P4;
type tab=array[1..100] of real;
var a:tab;
i,n:integer;
begin
write('n='); readln(n);
write('dati valorile tabloului:');
for i:=1 to n do read(a[i]);
{inlocuirea elementelor}
for i:=1 to n do
if a[i]>0 then a[i]:=1
else if a[i]<0 then a[i]:=-1;
writeln('tabloul obtinut:');
for i:=1 to n do
write(a[i]:5:2,' ');
readln;
end.
5. Fie dat tabloul a[1..100] of real. De determinat numarul de elemente maxime.
Program P5;
type tab=array[1..100] of real;
var a:tab;
i,n,k:integer;
max:real;
begin
write('n='); readln(n);
write('dati elementele tabloului:');
for i:=1 to n do
read (a[i]);
{determinarea elementelor maxime}
max:=a[1];
for i:=2 to n do
if a[i]>max then max:=a[i];
{determinarea nr de elemente maxime}
k:=0;
for i:=1 to n do
if a[i]=max then k:=k+1;
write('k=',k);
end.