🔔 Çevrimdışı bildirim almak ister misiniz?
Bir konuya etiketlendiğinizde, özel mesaj aldığınızda, bir mesajınız alıntılandığında forumda olmasanız bile anlık bildirim almak için lütfen izni verin.
Pascal programlama dilinde yazılmış bu programda dizi olarak verilmiş iki kümenin kesişimini ve birleşimini bulunması sağlanmıştır. Matematikteki birleşim ve kesişim için ideal örnek teşkil etmektedir.
Kod: Kodu kopyalamak için üzerine çift tıklayın!
uses crt;
var
dizi1,dizi2,kes,bir:array[1..100] of integer;
i,j,k,m,n,yedek:integer;
procedure kesisim;
begin
k:=0;i:=0;
while(i<=n) do
begin
i:=i+1; j:=1;
while((j<=m) and (dizi1[i]<>dizi2[j])) do
begin j:=j+1; end;
if(j<=m)then
begin
k:=k+1;
kes[k]:=dizi2[j];
end;
end;
for i:=1 to k do
write(kes[i],' ');
writeln('');
end;
procedure birlesim;
begin
for i:=1 to n do
bir[i]:=dizi1[i];
for i:=1 to m do
bir[n+i]:=dizi2[i];
for j:=1 to k do
begin
for i:=1 to m+n do
if bir[i]=kes[j]then begin bir[i]:=-1;i:=m+n;end;
end;
for i:=1 to m+n-1 do
for j:=i+1 to m+n do
begin
if bir[i]>bir[j] then
begin
yedek :=bir[i];
bir[i]:=bir[j];
bir[j]:=yedek;
end;
end;
for i:=1 to m+n do
begin
if (bir[i]<>-1) then write(bir[i],' ');
end;
end;
begin
clrscr;
writeln('Birinci dizi boyutunu giriniz...');
readln(n);
writeln('İkinci dizi boyutunu giriniz...');
readln(m);
writeln('Birinci dizi degerlerini giriniz...');
for i:=1 to n do
read(dizi1[i]);
writeln('İkinci dizi degerlerini giriniz...');
for i:=1 to m do
read(dizi2[i]);
writeln('');
readln;
kesisim;
writeln('');
birlesim;
readln;
end.