Advertisement
Guest User

Untitled

a guest
Sep 1st, 2015
70
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.51 KB | None | 0 0
  1. #include<iostream>
  2. using namespace std;
  3. struct datum{
  4. int _dan, _mjesec, _godina;
  5. void unos(int d, int m, int g){
  6. _dan = d; _mjesec = m; _godina = g;
  7. }
  8. void ispis(){
  9. cout << _dan << "/" << _mjesec << "/" << _godina << endl;
  10. }
  11. };
  12. struct polozenipredmet{
  13. char *_naziv;
  14. datum *_datumpolaganja;
  15. int *_ocjena;
  16. void unos(char *naziv, datum d, int ocjena){
  17. _naziv = new char[strlen(naziv) + 1];
  18. strcpy_s(_naziv, strlen(naziv) + 1, naziv);
  19. _datumpolaganja = new datum;
  20. *_datumpolaganja = d;
  21. *_ocjena = ocjena;
  22. }
  23. void ispis(){
  24. cout << _naziv << endl << _ocjena << endl;
  25. _datumpolaganja->ispis();
  26. }
  27. void dealociraj(){
  28. delete[]_naziv;
  29. delete[]_datumpolaganja;
  30. delete[]_ocjena;
  31. }
  32. };
  33. struct student{
  34. int _brojindeksa;
  35. char *_imeprezime;
  36. datum *_datumRodjenja;
  37. polozenipredmet *_polozenipredmeti;
  38. int _trenutnopolozenih;
  39. void unos(int indeks, char *imePrezime, datum *datumrodjenja){
  40. _brojindeksa = indeks;
  41. _imeprezime = imePrezime;
  42. _datumRodjenja->unos(datumrodjenja->_dan, datumrodjenja->_mjesec, datumrodjenja->_godina);
  43. _polozenipredmeti = new polozenipredmet;
  44. _trenutnopolozenih = 0;
  45. }
  46. void ispis(){
  47. cout << _brojindeksa << " " << *_imeprezime << endl;
  48. _datumRodjenja->ispis();
  49. for (int i = 0; i < _trenutnopolozenih; i++)
  50. _polozenipredmeti[i].ispis();
  51. }
  52. bool dodajpolozeni(polozenipredmet *novi){
  53. //na osnovu vrijednosti primljenih parametara funkcija treba dodati informacije
  54. //o novopolozenom predmetu. onemoguciti dupliranje predmeta u zavisnosti od upjsenosti operacije
  55. //funckija vraca truie ili alse
  56. for (int i = 0; i < _trenutnopolozenih; i++)
  57. {
  58. if (strcmp(_polozenipredmeti[i]._naziv, novi->_naziv) == 0)
  59. cout << " vec postoji taj predmet" << endl;
  60. return false;
  61. }
  62. _polozenipredmeti[_trenutnopolozenih].unos(novi->_naziv, *novi->_datumpolaganja, *novi->_ocjena);
  63. _trenutnopolozenih++;
  64. return true;
  65.  
  66. }
  67. int uklonipolozeni(char *naziv){
  68. int broj = 0;
  69. bool z = false;
  70. for (int i = 0; i < _trenutnopolozenih; i++)
  71. {
  72. if (strcmp(_polozenipredmeti[i]._naziv, naziv) == 0)
  73. {
  74. _polozenipredmeti[i].dealociraj();
  75. for (int j = i; j < _trenutnopolozenih; j++)
  76.  
  77. _polozenipredmeti[i] = _polozenipredmeti[i + 1];
  78. _trenutnopolozenih--;
  79. broj++;
  80. z = true;
  81.  
  82. }
  83.  
  84. }
  85. if (z == false)
  86. cout << "niste uspjeli ukloniti predmet" << endl;
  87. return broj;
  88. }
  89. };
  90. polozenipredmet *getpolozenebyprosjek(){
  91. float prosjecno = 0;
  92. for (int i = 0;i<
  93. }
  94. void main(){
  95.  
  96. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement