Guest User

Untitled

a guest
Jun 19th, 2018
78
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.77 KB | None | 0 0
  1. #include <iostream>
  2. #include <cstdlib>
  3. using namespace std;
  4. struct pacijent{ //struct
  5. int mat_br;
  6. char prez_ime[30];
  7. int god;
  8. pacijent *sljedeci;
  9. };
  10. int ukupno=0;
  11.  
  12. void upis(pacijent *lista){ //upis novog pacjenta
  13. pacijent *novi,*zadnji;
  14. zadnji = lista;
  15. while (zadnji->sljedeci)
  16. zadnji = zadnji->sljedeci;
  17. novi = new pacijent;
  18. zadnji -> sljedeci = novi;
  19. novi -> sljedeci = NULL;
  20. cout << "Maticni broj: ";
  21. cin >> novi -> mat_br;
  22. cout << "Prezime i ime: ";
  23. cin.ignore();
  24. cin.getline(novi->prez_ime,30);
  25. cout << "Godina: "; cin >> novi -> god;
  26. cout << "___________________________ " <<endl;
  27. ukupno++;
  28. };//upis
  29.  
  30. void sort(pacijent *lista){ //sortiranje i ispis
  31. pacijent *prethodni,*tekuci,*sljedeci;
  32. int indikator,brojac=0;
  33. do{
  34. indikator = 0;
  35. tekuci=lista->sljedeci;
  36. prethodni=lista;
  37. while (tekuci->sljedeci){
  38. sljedeci=tekuci->sljedeci;
  39. if (tekuci->mat_br > sljedeci->mat_br){
  40. prethodni->sljedeci=sljedeci;
  41. tekuci->sljedeci=sljedeci->sljedeci;
  42. sljedeci->sljedeci=tekuci;
  43. indikator=1;
  44. }//if
  45. prethodni=prethodni->sljedeci;
  46. tekuci=prethodni->sljedeci;
  47. }//while
  48. } while (indikator==1);
  49. tekuci = lista -> sljedeci;
  50. if (ukupno==0){
  51. cout<<"Nema ljudi!"<<endl;return;}
  52. while (tekuci){
  53. cout << "Maticni broj: " << tekuci -> mat_br << endl;
  54. cout << "Prezime i ime: " << tekuci -> prez_ime << endl;
  55. cout << "Godina: " << tekuci -> god << endl;
  56. cout << "---------------------" << endl;
  57. tekuci = tekuci -> sljedeci;
  58. }; // while
  59. }; //sort i ispis
  60.  
  61. int ispis(pacijent *lista){ // ispis svih pacijenata iz liste
  62. pacijent *tekuci = lista -> sljedeci;
  63. int mladi=0;
  64. if (ukupno==0){
  65. cout<<"Nema pacijenata!"<<endl;return 0;}
  66. while (tekuci){
  67. if (tekuci->god<18) {
  68. cout << "Maticni broj: " << tekuci -> mat_br << endl;
  69. cout << "Prezime i ime: " << tekuci -> prez_ime << endl;
  70. cout << "Godina: " << tekuci -> god << endl;
  71. cout << "---------------------" << endl;
  72. mladi++;
  73. }
  74. tekuci = tekuci -> sljedeci;
  75. };//while
  76. if (!mladi) return 0;
  77. return mladi;
  78. };//ispis
  79.  
  80. void brisanje(pacijent *lista,int mat_br){ //brisanje pacijenata iz liste prema matičnom broju
  81. pacijent *brisi = lista -> sljedeci, *prethodni = lista;
  82. int indikator=0,matbr;
  83. while (brisi){
  84. if (brisi -> mat_br == mat_br){
  85. prethodni -> sljedeci = brisi -> sljedeci;
  86. delete brisi;
  87. cout << "Pacijent je izbrisan iz vezane liste!" << endl;
  88. return;
  89. indikator=1;
  90. }; // if
  91. prethodni = brisi;
  92. brisi = brisi->sljedeci;
  93. }; // while
  94. cout << "Pacijent za brisanje nije pronadjen!" << endl;
  95. };//brisanje
  96.  
  97. // LEO RUPCIC 22.10.2010
Add Comment
Please, Sign In to add comment