Sunteți pe pagina 1din 2

{

Fie dat tabloul A[1..n], n<= 100, de numere intregi, Scrieti un program care
calculeaza suma elementelor
tabloului valorile carora sint mai mici ca elementul cu valoare maxima.
Sa se utilizeze functia si programul Pascal.
Intrare: numarul n si elementele tabloului A se introduc de la tastatura.
Iesire: pe ecran se afiseaza suma elementelor tabloului, valorile carora sint mai
mici ca elementul cu valoare maxima.
}
program p1;
type vector=array[1..100] of integer;
var a:vector;
n:integer;
procedure citeste(var a:vector;var n:integer);
var i:integer;
begin
write('Dati numarul de elemente ');readln(n);
for i:=1 to n do
begin
write('Dati elementul ',i,' ');readln(a[i]);
end;
writeln;
end;
procedure afisare(a:vector;n:integer);
var i:integer;
begin
write('Vectorul introdus este : ');
for i:=1 to n do write(a[i],' ');
writeln;
end;
function maxim(a:vector;n:integer):integer;
var i,max:integer;
begin
max:=a[1];
for i:=2 to n do
if max<a[i] then max:=a[i];
maxim:=max;
end;
function suma_valori(a:vector;n:integer):integer;
var i,max,s:integer;
begin
s:=0;
max:=maxim(a,n);
for i:=1 to n do
if a[i] < max then s:=s+a[i];
suma_valori:=s;
end;
begin
citeste(a,n);
afisare(a,n);

writeln('Numarul elementelor mai mici decat ',maxim(a,n),' este


',suma_valori(a,n));
writeln;
end.