Programlama | Programlama Dilleri | C Programlama Dili |C++

Anasayfa Programlama Pascal İki Kümenin Kesişimi ve Birleşimi


İki Kümenin Kesişimi ve Birleşimi

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.


  1.  
  2.  
  3.  
  4. uses crt;
  5. var
  6. dizi1,dizi2,kes,bir:array[1..100] of integer;
  7. i,j,k,m,n,yedek:integer;
  8.  
  9. procedure kesisim;
  10. begin
  11. k:=0;i:=0;
  12.  
  13. while(i<=n) do
  14. begin
  15.  i:=i+1; j:=1;
  16.  while((j<=m) and (dizi1[i]<>dizi2[j])) do
  17.  begin j:=j+1; end;
  18.  
  19.  if(j<=m)then
  20. begin
  21.  k:=k+1;
  22.  kes[k]:=dizi2[j];
  23. for i:=1 to k do
  24.  write(kes[i],' ');
  25. writeln('');
  26.  
  27. procedure birlesim;
  28. begin
  29.  
  30. for i:=1 to n do
  31. bir[i]:=dizi1[i];
  32. for i:=1 to m do
  33. bir[n+i]:=dizi2[i];
  34.  
  35. for j:=1 to k do
  36. begin
  37. for i:=1 to m+n do
  38. if bir[i]=kes[j]then begin bir[i]:=-1;i:=m+n;end;
  39.  
  40. for i:=1 to m+n-1 do
  41. for j:=i+1 to m+n do
  42. begin
  43. if bir[i]>bir[j] then
  44. begin
  45. yedek :=bir[i];
  46. bir[i]:=bir[j];
  47. bir[j]:=yedek;
  48. for i:=1 to m+n do
  49. begin
  50. if (bir[i]<>-1) then  write(bir[i],' ');
  51.  
  52.  
  53. begin
  54. clrscr;
  55. writeln('Birinci dizi boyutunu giriniz...');
  56. readln(n);
  57. writeln('İkinci dizi boyutunu giriniz...');
  58. readln(m);
  59. writeln('Birinci dizi degerlerini giriniz...');
  60. for i:=1 to n do
  61.  read(dizi1[i]);
  62. writeln('İkinci dizi degerlerini giriniz...');
  63. for i:=1 to m do
  64.  read(dizi2[i]);
  65. writeln('');
  66. readln;
  67. kesisim;
  68. writeln('');
  69. birlesim;
  70. readln;
  71.  
  72.  
  73.        
  74.  
  75.  

Yorumlar (0)
Sadece kayıtlı kullanıcılar yorum yazabilir!