Răspuns :
Răspuns:
program majoritar;
const nmax=100;
type sir=array[1..nmax] of integer;
var A,B:sir;
n,i,j,k, el, gasit, apmax:integer;
begin
write('n='); read(n);
writeln('introdu elementele sirului, cu spatiu intre ele');
read(A[1]); B[1]:=1; k:=1;
for i:=2 to n do
begin
read(el);
gasit:=0;
for j:=1 to k do
begin
if (A[j]=el) then
begin gasit:=1; inc(B[j]); break; end;
end;
if gasit=0 then begin inc(k); A[k]:=el; B[k]:=1; end;
end;
apmax:=B[1]; j:=1;
for i:=2 to k do
begin
if B[i]>apmax then begin apmax:=B[i]; j:=i; end;
end;
if apmax > n div 2
then writeln(A[j],' este majoritar')
else writeln('nu exista majoritar...');
end.
Explicație:
memorizez in vectorul A numai elementele disticte din sirul introdus, iar in vectorul B memorizez aparitiile elementelor din A.
Vă mulțumim pentru vizita pe site-ul nostru dedicat Informatică. Sperăm că informațiile prezentate v-au fost utile. Dacă aveți întrebări sau aveți nevoie de suport suplimentar, nu ezitați să ne contactați. Ne bucurăm să vă revedem și vă invităm să ne adăugați în lista de favorite!