Advertisement
Danielnew

Untitled

Mar 26th, 2017
63
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 5.28 KB | None | 0 0
  1. #include<iostream>
  2. #include<cstdio>
  3. #include<cstdlib>
  4. #include<cmath>
  5. #include<ctime>
  6. #include<iomanip>
  7. #include<string>
  8. #include<sstream>
  9. #include<fstream>
  10. #include<algorithm>
  11. #include<vector>
  12. #include<conio.h> //do koloru
  13. #include<windows.h>
  14. #include <sstream>
  15. #include <iomanip>
  16. using namespace std;
  17.  
  18. struct d
  19. {
  20. int rok;
  21. int msc;
  22. int day;
  23. };
  24. struct osoba
  25. {
  26. string imie;
  27. string nazw;
  28. d data;
  29. int wiek;
  30. };
  31.  
  32. void tworzenie(){}
  33.  
  34. struct sortn{
  35. bool operator()(const osoba &o1, const osoba &o2)
  36. {
  37. return o1.nazw<o2.nazw;
  38. }
  39. };
  40.  
  41. struct sortm{
  42. bool operator()(const osoba &o1, const osoba &o2)
  43. {
  44. return o1.data.msc<o2.data.msc;
  45. }
  46. };
  47. struct sortd{
  48. bool operator()(const osoba &o1, const osoba &o2)
  49. {
  50. return o1.data.day<o2.data.day;
  51. }
  52. };
  53. struct sortr{ //to jest sort do tego 5
  54. bool operator()(const osoba &o1, const osoba &o2)
  55. {
  56. if(o1.data.rok==o2.data.rok)
  57. {
  58. if(o1.data.msc==o2.data.msc)
  59. {
  60. return o1.data.day<=o2.data.day;
  61. }
  62. else
  63. {
  64. return o1.data.msc<o2.data.msc;
  65. }
  66. }
  67. else
  68. {
  69. return o1.data.rok<o2.data.rok;
  70. }
  71.  
  72.  
  73.  
  74. }}
  75. ;
  76.  
  77. void wyszukaj(string name, osoba*where, int ile_osob)
  78. {
  79. for(int g=0; g<ile_osob;g++)
  80. {
  81. if (name==where[g].imie)
  82. cout<<where[g].imie<<" "<<where[g].nazw<<"lat:"<<where[g].wiek;
  83. }
  84. }
  85.  
  86. int main(){
  87. HANDLE kon= GetStdHandle(STD_OUTPUT_HANDLE);
  88. int kolor;
  89. int l;
  90. vector <osoba> t;
  91. osoba o;
  92.  
  93. do{
  94. cout<<"Menu"<<endl;
  95. cout<<"1.Tworzenie bazy danych"<<endl; //done
  96. cout<<"2.Wczytaj baze z pliku"<<endl; //chyba done
  97. cout<<"3.Zapisywanie danych do pliku"<<endl; //done
  98. cout<<"4.Sortowanie"<<endl; //done
  99. cout<<"5.Najstarszy/Najmlodszy"<<endl; //done
  100. cout<<"6.Usuwanie Danych"<<endl; //done
  101. cout<<"7.Szukanie"<<endl;
  102. cout<<"8.Archiwizacja"<<endl; //done
  103. cout<<"9.Koniec"<<endl; //done
  104. cout<<"10.Zmiana koloru"<<endl; //done
  105. cout<<"11.Wypisanie bazy"<<endl; //done
  106.  
  107. cin>>l;
  108. switch(l)
  109. {
  110. case 1:
  111. { system( "cls" );
  112. int k;
  113. cout<<"Podaj ilosc rekordow"<<endl;
  114. cin>>k;
  115. osoba o;
  116. int i=0;
  117. for(i=0;i<k;i++)
  118. {
  119. cout<<"podaj imię"<<endl;
  120. cin>>o.imie;
  121. cout<<"podaj nazw"<<endl;
  122. cin>>o.nazw;
  123. cout<<"podaj rok"<<endl;
  124. cin>>o.data.rok;
  125. cout<<"podaj msc"<<endl;
  126. cin>>o.data.msc;
  127. cout<<"podaj dzien"<<endl;
  128. cin>>o.data.day;
  129. cout<<"podaj wiek"<<endl;
  130. cin>>o.wiek;
  131. t.push_back(o);
  132.  
  133. }
  134. }
  135. break;
  136.  
  137. case 2:
  138. {system( "cls" );
  139. string a;
  140. ifstream fin("dane.txt");
  141. while(fin>>a)
  142. {fin>>o.imie;
  143. fin>>o.nazw;
  144. fin>>o.data.msc;
  145. fin>>o.data.day;
  146. fin>>o.wiek;
  147. }
  148. fin.close();}
  149.  
  150.  
  151. break;
  152.  
  153. case 3:
  154. {system( "cls" );
  155. ofstream zapis("dane.txt");
  156. for (int oo = 0; oo < t.size(); oo++){
  157. zapis<< t.at(oo).imie << " ";
  158. zapis<< t.at(oo).nazw << " ";
  159. zapis<< t.at(oo).data.day << " ";
  160. zapis<< t.at(oo).data.msc << " ";
  161. zapis<< t.at(oo).data.rok << " ";
  162. zapis<<"lat:";
  163. zapis<< t.at(oo).wiek <<endl;}
  164. zapis.close();
  165.  
  166.  
  167. }
  168. break;
  169.  
  170. case 4:{system( "cls" );
  171. sort(t.begin(),t.end(),sortn());}
  172. break;
  173.  
  174. case 5:system( "cls" );
  175. {
  176. int young=1000;
  177. int old=0;
  178. int place1;
  179. int place2;
  180. for(int tuba=0;tuba<t.size();tuba++)
  181. {
  182. if(young>t[tuba].wiek)
  183. {
  184. young=t[tuba].wiek;
  185. place1=tuba;
  186. };
  187. if(old<t[tuba].wiek)
  188. {
  189. old=t[tuba].wiek;
  190. place2=tuba;
  191. };}
  192. cout<<"Najmłodszy"<<t[place1].imie<<" "<<t[place1].nazw<<endl;
  193. cout<<"Najstarszy"<<t[place2].imie<<" "<<t[place2].nazw<<endl;
  194.  
  195. }
  196.  
  197. break;
  198.  
  199. case 6:system( "cls" );
  200. for(int tttt=0;tttt<t.size();tttt++)
  201. {
  202. t.clear();}
  203.  
  204. break;
  205.  
  206. case 7:system( "cls" );
  207. {
  208. cout<<"Ile osób chcesz mieć maksymalnie wypisanych ?"<<endl;
  209. int ilosc;
  210. cin>>ilosc;
  211. cout<<"Podaj imie do znalezienia.";
  212. string toimie;
  213. cin>>toimie;
  214. //wyszukaj(toimie,t,ilosc);
  215. }
  216. break;
  217.  
  218. case 8:system( "cls" );
  219. {
  220.  
  221. ofstream zapis2("kopia_zapasowa.txt");
  222. for (int oo = 0; oo < t.size(); oo++){
  223. zapis2<< t.at(oo).imie << " ";
  224. zapis2<< t.at(oo).nazw << " ";
  225. zapis2<< t.at(oo).data.day << " ";
  226. zapis2<< t.at(oo).data.msc << " ";
  227. zapis2<< t.at(oo).data.rok << " ";
  228. zapis2<<"lat:";
  229. zapis2<< t.at(oo).wiek <<endl;}
  230. zapis2.close();
  231. }
  232. break;
  233.  
  234. case 9:system( "cls" );
  235.  
  236. break;
  237.  
  238. case 10:{system( "cls" );
  239. cout<<"Podaj numer koloru <1;15>"<<endl;
  240. cin>>kolor;
  241. SetConsoleTextAttribute (kon,kolor);
  242. } break;
  243.  
  244. case 11:{system( "cls" );
  245. for (int oo = 0; oo < t.size(); oo++){
  246. cout << t.at(oo).imie << " ";
  247. cout << t.at(oo).nazw << " ";
  248. cout << t.at(oo).data.day << " ";
  249. cout << t.at(oo).data.msc << " ";
  250. cout << t.at(oo).data.rok << " ";
  251. cout<<"lat:";
  252. cout << t.at(oo).wiek <<endl;}
  253. }
  254.  
  255.  
  256. break;
  257.  
  258.  
  259. case 311:{system( "cls" );
  260. cout<<"Tak... to tutaj powstal ten piekny program...";
  261. }
  262. break;
  263.  
  264. default:
  265. cout<<"Nie ma takiej opcji!!!";
  266. break;
  267.  
  268.  
  269. };
  270. }
  271.  
  272. while(l!=9);
  273.  
  274.  
  275.  
  276.  
  277.  
  278.  
  279.  
  280.  
  281.  
  282.  
  283.  
  284.  
  285.  
  286.  
  287.  
  288.  
  289.  
  290.  
  291. return 0;};
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement