Advertisement
rowers

Untitled

Jan 15th, 2014
67
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Pascal 1.84 KB | None | 0 0
  1. program project1;
  2.  
  3. type
  4. wskaznik=^element;
  5. element=record
  6.       liczba:integer;
  7.       nast:wskaznik;
  8.       end;
  9.  
  10. var
  11. g1,g2,g3:wskaznik;
  12. glowa:wskaznik;
  13.  
  14.  
  15. procedure Wstaw(var glowa:wskaznik; el:wskaznik);
  16. var
  17. biez:wskaznik;
  18. begin
  19.  if(glowa=NIL) then
  20.    begin
  21.      glowa:=el;
  22.      el^.nast:=NIL;
  23.    end
  24.  else
  25.  begin
  26.    biez:=glowa;
  27.    while(biez^.nast<>NIL) do
  28.       biez:=biez^.nast;
  29.       biez^.nast:=el;
  30.       el^.nast:=NIL;
  31.  end;
  32. end;
  33.  
  34. procedure Drukuj(gl:wskaznik);
  35. var
  36.   biez:wskaznik;
  37. begin
  38.    biez:=gl;
  39.    while(biez<>NIL) do
  40.     begin
  41.        writeln(biez^.liczba);
  42.        biez:=biez^.nast;
  43.     end;
  44. end;
  45.  
  46.  
  47. procedure Dodaj(var glowa:wskaznik; l:integer);
  48. var
  49.   nowy:wskaznik;
  50. begin
  51.    new(nowy);
  52.    nowy^.liczba:=l;
  53.    nowy^.nast:=glowa;
  54.    glowa:=nowy;
  55. end;
  56.  
  57.  
  58. procedure Podziel(var g1,g2,g3:wskaznik);
  59.  
  60. var
  61. biez:wskaznik;
  62. tmp:wskaznik;
  63. begin
  64. biez:=g1;
  65. while(biez<>NIL) do
  66.    begin
  67.      if (biez^.liczba>0) then
  68.        begin
  69.          tmp:=biez;
  70.          biez:=biez^.nast;
  71.          Wstaw(g2,tmp);
  72.        end
  73.      else
  74.        begin
  75.        tmp:=biez;
  76.        biez:=biez^.nast;
  77.        Wstaw(g3,tmp);
  78.        end;
  79.    end;
  80. g1:=nil;
  81. end;
  82.  
  83.  
  84.  
  85. function DOdajList(gl1,gl2:wskaznik):wskaznik;
  86. var
  87.   gl3:wskaznik;
  88.   biez:wskaznik;
  89. begin
  90.   gl3:=nil
  91.   biez:=gl1;
  92.   while(biez<>NIL)do
  93.      begin
  94.      Dodaj(gl3,bie^.liczba);
  95.      biez:=biez^.nast;
  96.      end;
  97.   biez:=gl2;
  98. while(biez<>NIL)do
  99.      begin
  100.      Dodaj(gl3,bie^.liczba);
  101.      biez:=biez^.nast;
  102.      end;
  103. DodajList:=gl3;
  104. end;
  105.  
  106.  
  107.  
  108. begin
  109. g1:=nil;
  110. Dodaj(g1,2);
  111. Dodaj(g1,-1);
  112. Dodaj(g1,0);
  113. Dodaj(g1,-1);
  114. Dodaj(g1,-1);
  115.  
  116. writeln('g1');
  117. Drukuj(g1);
  118. writeln();
  119.  
  120. Podziel(g1,g2,g3);
  121.  
  122. Writeln('g2');
  123. Drukuj(g2);
  124. writeln();
  125.  
  126. Writeln('g3');
  127. Drukuj(g3);
  128. writeln();
  129.  
  130. writeln('g1');
  131. Drukuj(g1);
  132. writeln();
  133.  
  134. readln;
  135. end.
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement