Posted By

bernardamatkovic on 11/11/12


Tagged

Lista-polje


Versions (?)

Zadatak 1: Evidencija životinja


 / Published in: C++
 

Zadatak za evidenciju životinja, kolegij Strukture podataka

  1. #include <iostream>
  2. #include<cstring>
  3. #include "listapolje.h"
  4. using namespace std;
  5.  
  6. int a = 0;
  7. int x,y;
  8.  
  9.  
  10. int dodaj(int x){
  11. zivotinje z;
  12. z.sifra = x;
  13.  
  14. cout <<"Unesite vrstu zivotinje ";
  15. cin.ignore();
  16. cin.getline(z.vrsta,40);
  17.  
  18. cout <<"Unesite naziv zivotinje: ";
  19. cin.ignore();
  20. cin.getline(z.naziv,40);
  21.  
  22. cout <<"Cijena zivotinje : ";
  23. cin>>z.cijena;
  24.  
  25. cout <<"Dan dostave zivotinje: ";
  26. cin>>z.dan;
  27.  
  28. cout <<"Mjesec dostave zivotinje: ";
  29. cin.ignore();
  30. cin.getline(z.mjesec,15);
  31.  
  32. cout <<"Godinu dostave zivotinje: ";
  33. cin>>z.godina;
  34.  
  35. InsertL (z,x,lista);
  36. return 1;
  37.  
  38. }
  39.  
  40. void ispis()
  41. {
  42.  
  43. cout <<endl<<"Ispis zapisa: "<<endl;
  44. do{
  45. Retreive (a, lista);
  46. cout <<"--------------------------------------------\n";
  47. cout <<"Sifra ";
  48. cout <<lista.values[a].sifra <<endl;
  49. cout <<"Vrsta zivotinje: ";
  50. cout <<lista.values[a].vrsta <<endl;
  51. cout <<"Naziv zivotinje: ";
  52. cout <<lista.values[a].naziv <<endl;
  53. cout <<"Cijena zivotinje: ";
  54. cout <<lista.values[a].cijena <<endl;
  55. cout <<"Dan dostave: ";
  56. cout <<lista.values[a].dan <<endl;
  57. cout <<"Mjesec dostave: ";
  58. cout <<lista.values[a].mjesec <<endl;
  59. cout <<"Godina dostave: ";
  60. cout <<lista.values[a].godina <<endl;
  61. cout<<endl;
  62. cout <<"--------------------------------------------\n";
  63. a--;
  64. }while(a>=0);
  65. }
  66.  
  67.  
  68. void pretrazi(int broj){
  69. do{
  70. Retreive (a, lista);
  71. if(lista.values[a].godina>=2012)
  72. if((!strcmp(lista.values[a].mjesec,"rujan")&&lista.values[a].dan>23)||!strcmp(lista.values[a].mjesec,"listopad")||
  73. !strcmp(lista.values[a].mjesec,"studeni")||!strcmp(lista.values[a].mjesec,"prosinac"))
  74. {
  75. cout <<"--------------------------------------------\n";
  76. cout <<"Sifra ";
  77. cout <<lista.values[a].sifra <<endl;
  78. cout <<"Vrsta zivotinje: ";
  79. cout <<lista.values[a].vrsta <<endl;
  80. cout <<"Naziv zivotinje: ";
  81. cout <<lista.values[a].naziv <<endl;
  82. cout <<"Cijena zivotinje: ";
  83. cout <<lista.values[a].cijena <<endl;
  84. cout <<"Dan dostave: ";
  85. cout <<lista.values[a].dan <<endl;
  86. cout <<"Mjesec dostave: ";
  87. cout <<lista.values[a].mjesec <<endl;
  88. cout <<"Godina dostave: ";
  89. cout <<lista.values[a].godina <<endl;
  90. cout <<"--------------------------------------------\n";
  91. broj++; }
  92. a--;
  93. }while(a>=0);
  94. if(broj!=0) cout <<"Ukupni broj zivotinja nakon datuma 23.09.2012. = " <<broj <<endl;
  95. else cout <<endl<<"U listi ne postoji zivotinja dostavljena nakon 23.09.2012. g."<<endl;
  96. }
  97.  
  98.  
  99. void brisi_naziv ()
  100. {
  101. char naziv[40];
  102. cin.ignore();
  103. cin.getline(naziv,40);
  104.  
  105. do{
  106. Retreive (y, lista);
  107. if(strcmp(lista.values[y].naziv, naziv)==0){
  108. cout <<"--------------------------------------------\n";
  109. cout <<"Sifra ";
  110. cout <<lista.values[y].sifra <<"\n";
  111. cout <<"Vrsta zivotinje: ";
  112. cout <<lista.values[y].vrsta <<endl;
  113. cout <<"Naziv zivotinje: ";
  114. cout <<lista.values[y].naziv <<endl;
  115. cout <<"Cijena zivotinje: ";
  116. cout <<lista.values[y].cijena <<endl;
  117. cout <<"Dan dostave: ";
  118. cout <<lista.values[y].dan <<endl;
  119. cout <<"Mjesec dostave: ";
  120. cout <<lista.values[y].mjesec <<endl;
  121. cout <<"Godina dostave: ";
  122. cout <<lista.values[y].godina <<endl;
  123. cout <<"--------------------------------------------\n";
  124. DeleteL (y,lista);
  125. x--;}
  126. y--;
  127. }while(y>=0);
  128.  
  129. }
  130.  
  131. int brisi_vrsta() {
  132. char vrsta[40];
  133. bool obrisan=0;
  134. cin.ignore();
  135. cin.getline(vrsta,40);
  136. while (LocateL(vrsta,lista)!=EndL(lista)) {
  137. do{
  138.  
  139. if(strcmp(lista.values[y].vrsta, vrsta)==0){
  140. cout <<"--------------------------------------------\n";
  141. cout <<"Sifra ";
  142. cout <<lista.values[y].sifra <<"\n";
  143. cout <<"Vrsta zivotinje: ";
  144. cout <<lista.values[y].vrsta <<endl;
  145. cout <<"Naziv zivotinje: ";
  146. cout <<lista.values[y].naziv <<endl;
  147. cout <<"Cijena zivotinje: ";
  148. cout <<lista.values[y].cijena <<endl;
  149. cout <<"Dan dostave: ";
  150. cout <<lista.values[y].dan <<endl;
  151. cout <<"Mjesec dostave: ";
  152. cout <<lista.values[y].mjesec <<endl;
  153. cout <<"Godina dostave: ";
  154. cout <<lista.values[y].godina <<endl;
  155. cout <<"--------------------------------------------\n";
  156. DeleteL (y,lista);
  157. x--;}
  158. y--;
  159. }while(y>=0);
  160. }
  161. if(!obrisan) return 0;
  162. else return 1;
  163. }
  164.  
  165.  
  166. int main()
  167. {
  168. InitL(lista);
  169. int izbor;
  170. int broj=0;
  171. do{
  172. cout<<endl<<"EVIDENCIJA ZIVOTINJA U TRGOVINI KUCNIM LJUBIMCIMA"<<endl;
  173. cout <<"***Izbrnik***"<<endl;
  174. cout <<"1. dodavanje zapisa u listu"<<endl;
  175. cout <<"2. pretrazivanje liste po datumu"<<endl;
  176. cout <<"3. brisanje zivotinje po nazivu"<<endl;
  177. cout <<"4. brisanje zivotinje po vrsti"<<endl;
  178. cout <<"5. sortiranje liste prema cijeni i nazivu"<<endl;
  179. cout <<"6. ispis "<<endl;
  180. cout <<"9. izlaz iz programa \n";
  181.  
  182. cout <<"Vas izbor: ";
  183. cin >>izbor;
  184. switch(izbor)
  185. {
  186. case 1:{
  187. cout<<endl;
  188. cout <<"Dodavanje zivotinje u listu"<<endl;
  189. if(dodaj(x)==1) cout <<"Unos je spremljen "<<endl;
  190. else {cout <<"Greska "<<endl;
  191. break;}
  192. system("pause");
  193. a=x;
  194. y=x;
  195. ispis();
  196. x++;
  197. }break;
  198. case 2:{
  199. cout<<endl;
  200. cout <<"Pretrazivanje liste, ispis zivotinja dodanih nakon 23.rujan2012. : "<<endl;
  201. a=x-1;
  202. pretrazi(broj);
  203. }break;
  204. case 3:{
  205. cout<<endl;
  206. cout <<"Brisanje zivotinje prema nazivu: "<<endl;
  207. cout <<"Unesite naziv zivotinje: "<<endl;
  208. brisi_naziv();
  209. }break;
  210. case 4:{
  211. cout<<endl;
  212. cout <<"Brisanje zivotinje prema vrsti: "<<endl;
  213. cout <<"Unesite vrstu zivotinje: "<<endl;
  214. brisi_vrsta();
  215. }break;
  216. case 5:{
  217. cout<<endl;
  218. cout <<"Sortiranje liste: "<<endl;
  219. msort();
  220. ispis();
  221. }break;
  222. case 6: a=x;
  223. y=x;
  224. ispis();
  225. x++;
  226.  
  227. }
  228. }while(izbor!=9);
  229. cout <<"Kraj programa"<<endl;
  230.  
  231. system("pause");
  232. return 0;
  233. }

Report this snippet  

Comments

RSS Icon Subscribe to comments
Posted By: battery on November 11, 2012

i like it.

You need to login to post a comment.