Advertisement
Guest User

Untitled

a guest
Jun 17th, 2019
81
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 10.86 KB | None | 0 0
  1. #include <iostream>
  2. #include <fstream>
  3. #include <conio.h>
  4. #include <cstdlib>
  5. #include <string.h>
  6.  
  7. using namespace std;
  8.  
  9. struct rekord
  10. {
  11. int numer;
  12. string model;
  13. string marka;
  14. string kolor;
  15. int przebieg;
  16. int rok;
  17. double cena;
  18.  
  19. };
  20.  
  21. void wyswietl(rekord *wsk, int licznik);
  22. void dodaj(rekord baza[100],int i, int &licznik);
  23. void zapisz(rekord baza[100],int licznik);
  24. void wczytaj(rekord baza[100],int &licznik);
  25. void szukaj(rekord baza[100],int licznik,char t);
  26. void usun(rekord baza[100],int &licznik,int ktory);
  27.  
  28. int main()
  29. {
  30. int licznik=0;
  31. int ktory=0;
  32. int i;
  33. char z;
  34. rekord baza[100];
  35. rekord *wsk;
  36. wsk=baza;
  37. wczytaj(baza,licznik);
  38. do{
  39. system("cls");
  40. cout <<"****************************************************************"<<endl;
  41. cout << "******************* Komis samochodowy *********************"<< endl;
  42. cout << "******************* <1> Dodaj samochod *********************"<< endl;
  43. cout << "******************* <2> Wyswietl samochody *********************"<< endl;
  44. cout << "******************* <3> Wyszukaj *********************"<< endl;
  45. cout << "******************* <4> Zapisz do pliku *********************"<<endl;
  46. cout << "******************* <5> Usun samochow *********************"<<endl;
  47. cout << "******************* <6> Wyjscie *********************"<<endl;
  48. cout <<"****************************************************************"<<endl;
  49. cin>>z;
  50.  
  51. switch(z)
  52. {
  53. case '1' :
  54. {
  55. cout<<"Dodawanie samochodow"<<endl;
  56. dodaj(baza,i,licznik);
  57. break;
  58. }
  59. case '2' :
  60. {
  61. wyswietl(wsk,licznik);
  62. getch();
  63. break;
  64. }
  65. case '3' :
  66. {
  67. system("cls");
  68. char t;
  69.  
  70. cout<<"Podaj wedlog czego chcesz szukac:"<<endl;
  71. cout<<"<1> Marka"<<endl;
  72. cout<<"<2> Roku"<<endl;
  73. cout<<"<3> Przedzial cenowy"<<endl;
  74. cout<<"<4> Koloru"<<endl;
  75. cout<<"<5> Przebiegu"<<endl;
  76. cout<<"<q> Powrot"<<endl;
  77. cin>>t;
  78. szukaj(baza,licznik,t);
  79.  
  80. break;
  81. }
  82. case '4' :
  83. {
  84. zapisz(baza,licznik);
  85. cout<<"Baza danych zostala poprawnie zapisana"<<endl;
  86. cout<<"Nacisnij dowolny klawisz aby przejsc dalej"<<endl;
  87. getch();
  88. break;
  89. }
  90. case '5' :
  91. {
  92.  
  93. cout<<"Podaj numer samochodu do skasownia: ";
  94. cin>>ktory;
  95. usun(baza,licznik,ktory);
  96. break;
  97. }
  98. }
  99.  
  100. } while (z!='6');
  101.  
  102. return 0;
  103. }
  104. //=====================dodwanie=
  105. void dodaj(rekord baza[100],int i, int &licznik)
  106. {
  107. i=licznik;
  108. baza[i].numer=i+1;
  109. cout<<"Podaj marke: ";
  110. cin>>baza[i].marka;
  111. cout<<endl;
  112. cout<<"podaj model: ";
  113. cin>>baza[i].model;
  114. cout<<endl;
  115. cout<<"podaj rok: ";
  116. cin>>baza[i].rok;
  117. cout<<endl;
  118. cout<<"podaj przebieg: ";
  119. cin>>baza[i].przebieg;
  120. cout<<endl;
  121. cout<<"podaj kolor: ";
  122. cin>>baza[i].kolor;
  123. cout<<endl;
  124. cout<<"podaj cene: ";
  125. cin>>baza[i].cena;
  126. cout<<endl;
  127. licznik++;
  128.  
  129. }
  130.  
  131. //============wyswietlanie==========
  132. void wyswietl(rekord *wsk, int licznik)
  133. {
  134. system("cls");
  135.  
  136. cout << "---------------------------------------------------------------------"<<endl;
  137. cout << "Lp. "<<"Marka "<<"Model "<<"Rocznik "<<"Przebieg "
  138. <<"Kolor "<<"Cena"<<endl;
  139. cout << "---------------------------------------------------------------------"<<endl;
  140. for (int i=0;i<licznik;i++)
  141. {
  142.  
  143. cout<<wsk->numer<<". " <<wsk->marka<<" "<<wsk->model<<" "<<wsk->rok <<" "
  144. <<wsk->przebieg<<" "<<wsk->kolor<<" "<<wsk->cena<<"zl"<<endl;
  145. cout<<"---------------------------------------------------------------------"<<endl;
  146.  
  147. wsk++;
  148. }
  149. for (int i=0;i<licznik;i++)
  150. {
  151. wsk--;
  152. }
  153. cout<<"Nacisnij dowolny klawisz aby przejsc dalej"<<endl;
  154. }
  155.  
  156. //===============zapisdo pliku
  157. void zapisz(rekord baza[100],int licznik)
  158. {
  159. {
  160. ofstream mojplik;
  161. mojplik.open("abc1.txt");
  162. for (int i=0;i<licznik;i++)
  163. {
  164. mojplik<<baza[i].numer<<endl;
  165. mojplik<<baza[i].marka<<endl;
  166. mojplik<<baza[i].model<<endl;
  167. mojplik<<baza[i].rok<<endl;
  168. mojplik<<baza[i].przebieg<<endl;
  169. mojplik<<baza[i].kolor<<endl;
  170. mojplik<<baza[i].cena<<endl;
  171. }
  172.  
  173. mojplik.close();
  174.  
  175. }
  176. }
  177. //==============wczytanie z pliku=
  178. void wczytaj(rekord baza[100],int &licznik)
  179. {
  180. ifstream mojplik("abc1.txt");
  181.  
  182. int g=0;
  183.  
  184. for(int i=0; mojplik.good(); ++i,g++)
  185. {
  186. mojplik>>baza[i].numer >> baza[i].marka >> baza[i].model >> baza[i].rok >> baza[i].przebieg >> baza[i].kolor >> baza[i].cena;
  187.  
  188. }
  189. g-=1;
  190. if(g>=0)
  191. {
  192. licznik=licznik+g;
  193. }
  194. }
  195. //===============szukaj========================================================================
  196. void szukaj(rekord baza[100],int licznik,char t)
  197. {
  198. system("cls");
  199. switch(t)
  200. {
  201. case '1' :
  202. {
  203. string sam;
  204. cout<<"Podaj Marke do wyszukania:"<<endl;
  205. cin>>sam;
  206. cout<<endl;
  207. for(int i=0;i<licznik;i++)
  208. {
  209. if (baza[i].marka==sam)
  210. {
  211. cout<<"Samochod numer: "<<baza[i].numer<<endl;
  212. cout<<"Marka: "<<baza[i].marka<<endl;
  213. cout<<"Model: "<<baza[i].model<<endl;
  214. cout<<"Rok: "<<baza[i].rok<<endl;
  215. cout<<"Przebieg: "<<baza[i].przebieg<<endl;
  216. cout<<"Kolor: "<<baza[i].kolor<<endl;
  217. cout<<"Cena: "<<baza[i].cena<<"zl"<<endl<<endl;
  218.  
  219. }
  220.  
  221. }
  222.  
  223. cout<<"Nacisnij dowolny klawisz aby przejsc dalej"<<endl;
  224. getch();
  225. break;
  226. }
  227.  
  228. case '2' :
  229. {
  230. int sam;
  231. cout<<"Podaj rok do wyszukania:"<<endl;
  232. cin>>sam;
  233. cout<<endl;
  234. for(int i=0;i<licznik;i++)
  235. {
  236. if (baza[i].rok==sam)
  237. {
  238. cout<<"Samochod numer: "<<baza[i].numer<<endl;
  239. cout<<"Marka: "<<baza[i].marka<<endl;
  240. cout<<"Model: "<<baza[i].model<<endl;
  241. cout<<"Rok: "<<baza[i].rok<<endl;
  242. cout<<"Przebieg: "<<baza[i].przebieg<<endl;
  243. cout<<"Kolor: "<<baza[i].kolor<<endl;
  244. cout<<"Cena: "<<baza[i].cena<<"zl"<<endl<<endl;
  245.  
  246. }
  247.  
  248. }
  249. cout<<"Nacisnij dowolny klawisz aby przejsc dalej"<<endl;
  250. getch();
  251. break;
  252. }
  253.  
  254. case '3' :
  255. {
  256. double min,max;
  257. cout<<"Podaj cene minimalna do wyszukania:"<<endl;
  258. cin>>min;
  259. cout<<"Podaj cene maksymalna do wyszukania:"<<endl;
  260. cin>>max;
  261. cout<<endl;
  262. for(int i=0;i<licznik;i++)
  263. {
  264. if (baza[i].cena>=min && baza[i].cena<=max)
  265. {
  266. cout<<"Samochod numer: "<<baza[i].numer<<endl;
  267. cout<<"Marka: "<<baza[i].marka<<endl;
  268. cout<<"Model: "<<baza[i].model<<endl;
  269. cout<<"Rok: "<<baza[i].rok<<endl;
  270. cout<<"Przebieg: "<<baza[i].przebieg<<endl;
  271. cout<<"Kolor: "<<baza[i].kolor<<endl;
  272. cout<<"Cena: "<<baza[i].cena<<"zl"<<endl<<endl;
  273.  
  274. }
  275. }
  276.  
  277. cout<<"Nacisnij dowolny klawisz aby przejsc dalej"<<endl;
  278. getch();
  279. break;
  280. }
  281. case '4':
  282. {
  283. char *sam;
  284. cout<<"Podaj kolor do wyszukania:"<<endl;
  285. cin>>sam;
  286. /*
  287. for(int i=0;i<licznik;i++)
  288. {
  289. if(strncmp(baza[i].kolor,sam,strlen(sam)) == 0)
  290. {
  291. cout<<endl;
  292. cout<<"Samochod numer: "<<baza[i].numer<<endl;
  293. cout<<"Marka: "<<baza[i].marka<<endl;
  294. cout<<"Model: "<<baza[i].model<<endl;
  295. cout<<"Rok: "<<baza[i].rok<<endl;
  296. cout<<"Przebieg: "<<baza[i].przebieg<<endl;
  297. cout<<"Kolor: "<<baza[i].kolor<<endl;
  298. cout<<"Cena: "<<baza[i].cena<<"zl"<<endl<<endl;
  299.  
  300. }
  301. } */
  302. cout<<"Nacisnij dowolny klawisz aby przejsc dalej"<<endl;
  303. getch();
  304. break;
  305. }
  306. case '5' :
  307. {
  308. int min,max;
  309. cout<<"Podaj przebieg minimalny do wyszukania:"<<endl;
  310. cin>>min;
  311. cout<<"Podaj przebieg maksymalny do wyszukania:"<<endl;
  312. cin>>max;
  313. cout<<endl;
  314. for(int i=0;i<licznik;i++)
  315. {
  316. if (baza[i].przebieg>=min && baza[i].przebieg<=max)
  317. {
  318. cout<<"Samochod numer: "<<baza[i].numer<<endl;
  319. cout<<"Marka: "<<baza[i].marka<<endl;
  320. cout<<"Model: "<<baza[i].model<<endl;
  321. cout<<"Rok: "<<baza[i].rok<<endl;
  322. cout<<"Przebieg: "<<baza[i].przebieg<<endl;
  323. cout<<"Kolor: "<<baza[i].kolor<<endl;
  324. cout<<"Cena: "<<baza[i].cena<<"zl"<<endl<<endl;
  325.  
  326. }
  327.  
  328. }
  329.  
  330. cout<<"Nacisnij dowolny klawisz aby przejsc dalej"<<endl;
  331. getch();
  332. break;
  333. }
  334. case 'q' : break;
  335.  
  336. }
  337.  
  338. }
  339. //====usun
  340. void usun(rekord baza[100],int &licznik,int ktory)
  341. {
  342. ktory--;
  343. if (ktory<licznik)
  344. {
  345. for (int i=ktory;i<licznik;i++)
  346. {
  347. baza[i].marka = baza[i+1].marka;
  348. baza[i].model = baza[i+1].model;
  349. baza[i].rok = baza[i+1].rok;
  350. baza[i].przebieg = baza[i+1].przebieg;
  351. baza[i].kolor = baza[i+1].kolor;
  352. baza[i].cena = baza[i+1].cena;
  353. }
  354. cout<<"Samochod zostaw usuniety z bazy"<<endl;
  355. licznik--;
  356. }else cout<<"Nie ma w bazie samochodu pod tym numerem"<<endl;
  357. cout<<endl;
  358. cout<<"Nacisnij dowolny klawisz aby przejsc dalej"<<endl;
  359. getch();
  360.  
  361. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement