Advertisement
Guest User

Untitled

a guest
Sep 8th, 2016
101
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.24 KB | None | 0 0
  1. program biblioteka ;
  2.  
  3. {$mode objfpc}{$H+}
  4.  
  5. uses
  6. {$IFDEF UNIX}{$IFDEF UseCThreads}
  7. cthreads,
  8. {$ENDIF}{$ENDIF}
  9. Classes
  10. { you can add units after this };
  11.  
  12. Type data1=record
  13. dzien: 1..31;
  14. miesiac: 1..12;
  15. rok:1900..2016;
  16. end;
  17.  
  18. type calosc=record
  19. tytul: string[30];
  20. druk:data1;
  21. prawda:string[1]
  22. end;
  23.  
  24. type
  25. tab= array [1..20] of calosc ;
  26.  
  27. var
  28. baza:calosc;
  29. data:data1;
  30. l:tab;
  31.  
  32. procedure wpisz(var l:tab);
  33. var i: integer;
  34. begin
  35. for i:=1 to 3 do
  36. begin
  37. with l[i] do
  38. begin
  39. writeln('podaj tytul',i,' ksiazki');
  40. readln(baza.tytul);
  41. writeln('podaj date- dzien,miesiac,rok');
  42. readln(data.dzien);
  43. readln(data.miesiac);
  44. readln(data.rok);
  45. {writeln('czy ksiazka jest podrecznikiem (T,N)');
  46. readln(baza.prawda); }
  47. {if (baza.prawda=116) and (baza.prawda=110)
  48. writeln(poprawne); else
  49. Writeln(niepoprawne oznaczenie); }
  50. end;
  51. end;
  52. end;
  53. procedure sorttyt(var l:tab);
  54. var i,j:integer;
  55. t:calosc;
  56.  
  57. begin
  58. for i:=1 to 3-1 do
  59. begin
  60. for j:=0 to i-1 do
  61. if l[j].tytul>l[j+1].tytul then begin
  62. t:=l[j];
  63. l[j]:=l[j+1];
  64. l[j+1]:=t;
  65. end;
  66. end;
  67. end;
  68.  
  69.  
  70. procedure sortdat(var l:tab);
  71. var i,j:integer;
  72. t:calosc;
  73. begin
  74. writeln(' Po sortowaniu datami');
  75. for i:=0 to 3-1 do
  76. for j:=0 to i-1 do
  77. begin
  78. if l[j].druk.rok>l[i].druk.rok then
  79. begin
  80. t:=l[j];
  81. l[j]:=l[i];
  82. l[i]:=t;
  83.  
  84. end;
  85. end;
  86. end;
  87.  
  88.  
  89.  
  90.  
  91. procedure wys(l:tab);
  92. var
  93. i,a:integer;
  94. begin
  95. for i:=1 to 3 do
  96. begin
  97. writeln(' kiazka',i);
  98. with l[i] do
  99. for a:=1 to 3 do
  100. writeln (' tytul :',tytul);
  101. writeln ('data:',data.dzien,'.',data.miesiac,'.',data.rok);
  102. {writeln ('Czy ksiazka jest podrecznikiem',prawda); }
  103. end;
  104. {repeat until keypressed;}
  105. writeln;
  106. writeln ;
  107. end;
  108.  
  109.  
  110. begin
  111. wpisz(l);
  112. writeln ('przed sortowaniem');
  113. wys(l);
  114. sorttyt(l);
  115. wys(l);
  116. sortdat(l);
  117. wys(l);
  118. write;
  119. readln;
  120.  
  121. end.
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement