Posted By

JakovAndric on 10/25/10


Tagged

poljeh


Versions (?)

Zadatak 1


 / Published in: C++
 

  1. #include <iostream>
  2. using namespace std;
  3. struct tpacijent{
  4. int maticni;
  5. char ime_prez[40];
  6. int godine;
  7. };
  8. tpacijent*pacijent=new tpacijent;
  9. tpacijent*pacijent_mladi=new tpacijent;
  10. tpacijent*pacijent_novi=new tpacijent;
  11. typedef int element;
  12. typedef int elementtype;
  13. #define brojeva 10000
  14.  
  15. struct lis {
  16. tpacijent values[brojeva];
  17. int cursor;
  18. };
  19. //typedef tpacijent elementtype;
  20. //typedef lis element;
  21.  
  22.  
  23. typedef lis list;
  24.  
  25. int FirstL(list *pok) {
  26. return (0);
  27. }
  28.  
  29.  
  30. int EndL(list *pok) {
  31. return pok->cursor;
  32. }
  33.  
  34.  
  35. element NextL(element p, list *pok) {
  36. if ((p >= pok->cursor) || (p < 0)) {
  37. cout << "Nepostojeci element liste" << endl;
  38. return (0);
  39. } else
  40. return (p + 1);
  41. }
  42.  
  43.  
  44. element PreviousL(element p, list *pok) {
  45. if ((p >= pok->cursor) || (p <= 0)) {
  46. cout << "Nepostojeci element liste" << endl;
  47. return (0);
  48. } else
  49. return (p-1);
  50. }
  51.  
  52.  
  53. element LocateL(int p, list *pok) {
  54. int i = 0;
  55. while ((i != pok->cursor) && (pok->values[i].maticni != p))
  56. i++;
  57. return (i);
  58. }
  59.  
  60.  
  61. int InsertL(tpacijent x, element p, list *pok) {
  62. int i;
  63. if ((p <= pok->cursor) && (p >= 0) && (pok->cursor < 10000)) {
  64. for (i = pok->cursor; i >= p; i--)
  65. pok->values[i] = pok->values[i-1];
  66. pok->cursor++;
  67. pok->values[p]= x;
  68. } else {
  69. if (pok->cursor >= 10000){
  70. cout << "Lista je puna" << endl;
  71. return 0;
  72. }
  73. else {
  74. cout << "Nepostojeci element liste" << endl;
  75. return 0;
  76. }
  77. }
  78. return 1;
  79. }
  80.  
  81. int DeleteL(element p, list *pok) {
  82. int i;
  83. if ((p < pok->cursor) && (p >= 0)) {
  84. for (i = p; i < pok->cursor; i++)
  85. pok->values[i]=pok->values[i+1];
  86. pok->cursor--;
  87. } else {
  88. cout << "Nepostojeci element liste" << endl;
  89. return 0;
  90. }
  91. return 1;
  92. }
  93.  
  94.  
  95. tpacijent RetrieveL(element p,list *pok){
  96. if ((p < pok->cursor) && (p >= 0)){
  97. return (pok->values[p]);
  98. }
  99. }
  100.  
  101.  
  102. void DeleteAllL(list *pok) {
  103. pok->cursor = 0;
  104. }
  105.  
  106.  
  107. void InitL(list *pok) {
  108. pok->cursor = 0; }

Report this snippet  

You need to login to post a comment.