Posted By

dotonkovi on 10/25/10


Tagged

header sp polje


Versions (?)

Datoteka zaglavlja "lista_polje.h"


 / Published in: C++
 

Kod za datoteku zaglavlja "lista_polje.h".

  1. #include <iostream>
  2. using namespace std;
  3.  
  4. struct pacijent {
  5. char prez_ime[30];
  6. int mat_br;
  7. int dob;
  8. };
  9.  
  10. struct pacijenti {
  11. pacijent ID[25];
  12. int kursor;
  13. };
  14.  
  15. void InitL(pacijenti *lista){
  16. lista->kursor=0;
  17. }
  18.  
  19. int FirstL(pacijenti *lista){
  20. return 0;
  21. }
  22.  
  23. int EndL(pacijenti *lista){
  24. return lista->kursor;
  25. }
  26.  
  27. int NextL(int p, pacijenti *lista){
  28. if(p==lista->kursor-1) return EndL(lista);
  29. if (p>=lista->kursor) cout << "Pogreska! "<<endl;
  30. else{
  31. cout << "Ime i prezime pacijenta: "<<lista->ID[p+1].prez_ime;
  32. cout << "Maticni broj: "<<lista->ID[p+1].mat_br;
  33. cout << "Dob: "<<lista->ID[p+1].dob;
  34. }
  35. }
  36.  
  37. void PreviousL(int p, pacijenti *lista){
  38. if(p==lista->kursor) {
  39. cout << "Ime i prezime pacijenta: "<<lista->ID[lista->kursor-1].prez_ime;
  40. cout << "Maticni broj pacijenta: "<<lista->ID[lista->kursor-1].mat_br;
  41. cout << "Dob pacijenta: "<<lista->ID[lista->kursor-1].dob;
  42. }
  43. else{
  44. if (p<=0 || p>lista->kursor) cout << "Pogreska!"<<endl;
  45. else{
  46. cout << "Ime i prezime pacijenta: "<<lista->ID[p-1].prez_ime;
  47. cout << "Maticni broj pacijenta: "<<lista->ID[p-1].mat_br;
  48. cout << "Dob pacijenta: "<<lista->ID[p-1].dob;
  49. }
  50. }
  51. }
  52.  
  53. int LocateL(int pom, pacijenti *lista){
  54. for (int i=0;i<lista->kursor;i++){
  55. if (lista->ID[i].mat_br==pom) return i;
  56. }
  57. return EndL(lista);
  58. }
  59. void InsertL(pacijent pom, int p, pacijenti *lista){
  60. if(p>=0 && p<=lista->kursor){
  61. lista->kursor++;
  62. for (int i=lista->kursor-1;i>=p;i--){
  63. lista->ID[i]=lista->ID[i-1];
  64. }
  65. lista->ID[p]=pom;
  66. }
  67. else cout << "Ne moze!"<<endl;
  68. }
  69.  
  70. void DeleteL(int p, pacijenti *lista){
  71. if(p>=0 && p<=lista->kursor){
  72. for (int i=p;i<lista->kursor-1;i++){
  73. lista->ID[i]=lista->ID[i+1];
  74. }
  75. lista->kursor--;
  76.  
  77. }
  78. else cout << "Ne moze!"<<endl;
  79. }
  80.  
  81. pacijent RetrieveL(int p, pacijenti *lista){
  82. if (p<0 || p>=lista->kursor) cout << "Ne moze!"<<endl;
  83. else return lista->ID[p];
  84. }
  85.  
  86. void DeleteAllL(pacijenti *lista){
  87. lista->kursor=0;
  88. }
  89.  
  90. int novi_pacijent(pacijent pom, pacijenti *lista){
  91. bool dodan=false;
  92. lista->ID[lista->kursor]=pom;
  93. lista->kursor++;
  94. cout<<"Pacijent dodan!"<<endl;
  95. dodan = true;
  96. if(dodan) return 1;
  97. else return 0;
  98. }
  99.  
  100. void sortiranje(pacijenti *lista){
  101. if(lista->kursor!=0) {
  102. for (int i=1; i<lista->kursor; i++){
  103. int j=i-1;
  104. pacijent pom=lista->ID[i];
  105. while(j>=0 && lista->ID[j].mat_br>pom.mat_br)
  106. lista->ID[j+1]=lista->ID[j--];
  107. lista->ID[j+1]=pom;
  108. }
  109. }
  110. else cout<<"Lista je prazna!!! :("<<endl;
  111. }
  112. void popis(pacijenti *lista){
  113.  
  114. for(int i=0;i<lista->kursor;i++){
  115. cout << "Ime i prezime pacijenta: "<<lista->ID[i].prez_ime<<endl;
  116. cout << "Maticni broj: "<<lista->ID[i].mat_br<<endl;
  117. cout << "Dob: "<<lista->ID[i].dob<<endl;
  118. cout << endl;
  119. }
  120. }
  121.  
  122. void mladi(pacijenti *lista){
  123. int brojac=0;
  124. for (int i=0;i<lista->kursor;i++){
  125. if (lista->ID[i].dob<18){
  126. cout << "Ime i prezime pacijenta: "<<lista->ID[i].prez_ime<<endl;
  127. cout << "Maticni broj: "<<lista->ID[i].mat_br<<endl;
  128. cout << "Dob: "<<lista->ID[i].dob<<endl;
  129. cout << endl;
  130. brojac++;
  131. }}
  132. if(lista->kursor==0) cout<<"Lista je prazna!!! :("<<endl;
  133. else cout << "Mladih od 18 ima: "<<brojac<<". "<<endl;
  134. }
  135.  
  136. int brisanje(pacijenti *lista, int mat_br){
  137. for (int i=0;i<lista->kursor;i++){
  138. if(lista->ID[i].mat_br==mat_br){
  139. for (int j=i;j<lista->kursor-1;j++)
  140. lista->ID[j]=lista->ID[j+1];
  141. lista->kursor--;
  142. cout<<"Pacijent obrisan!"<<endl<<endl;
  143. return 1;
  144. }
  145. }
  146. cout<<"Nije naden pacijent s tim maticnim brojem. :("<<endl;
  147. return 0;
  148. }

Report this snippet  

You need to login to post a comment.