Advertisement
Guest User

Untitled

a guest
Jan 17th, 2019
69
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 10.49 KB | None | 0 0
  1. #include<iostream>
  2. #include<stdlib.h>
  3. #include<iomanip>
  4. #include<math.h>
  5. #include<algorithm>
  6.  
  7. using namespace std;
  8.  
  9. bool porownaj(int a, int b) {
  10. //Sprawdzamy, czy pierwszy element jeszt większy od drugiego
  11. return a > b;
  12. }
  13.  
  14. int main() {
  15. double srTemp = 0, srGeo = 1;
  16. int srTemp1 = 0;
  17. int x, k, y, p = 0;
  18. ////////Dane losowe;
  19. int tab1[31];
  20. int tab2[31];
  21. int tab3[31];
  22. int tab4[31];
  23. ////////Dane wprowadzane z palca
  24. int tab5[31] = {};
  25. int tab6[31] = {};
  26. int tab7[31] = {};
  27. int tab8[31] = {};
  28.  
  29. double srednia;
  30.  
  31. //srand(time(NULL));
  32. cout << "Wybierz co chcesz zrobic\n";
  33. cout << "\n";
  34. cout << "1 - Wypelnij stacje meterelogiczna wlasnymi danymi.\n";
  35. cout << "2 - Wypelnij stacje meterelogiczna wygenerowanymi danymi.\n";
  36. cout << "\n";
  37. cin >> x;
  38.  
  39. switch (x) {
  40. case 1:
  41. /////////////////////////////////////////TEMPERATURA//////////////////////////////////
  42. cout << "Wypelnij pola swoimi pomiarami temperatur\n";
  43. cout << "Ile elementow chcesz dodac \n";
  44. cin >> k;
  45. if(k > 0) {
  46. for(int i = 0; i <= k; i++) {
  47. cout << "Podaj jaka wartosc\n";
  48. cin >> tab5[i];
  49.  
  50. if (tab5[i] >= 1) {
  51. srGeo *= tab5[i]; // to jest wzór na geometryczne coś
  52. p += 1;
  53. }
  54. }
  55. } else {
  56. cout << "Nie mozesz podac wartosci ujemnych !";
  57. }
  58.  
  59. cout << "\n";
  60. sort(tab5, tab5 + 32, porownaj);
  61. cin.get(); // najwieksza -> najmniejsza
  62.  
  63. for(int g = 0; g <= k; g++) {
  64. cout << tab5[g] << "C ";
  65. }
  66.  
  67. for (int i = 0; i <= 31; i++) {
  68. srTemp += tab5[i];
  69. }
  70. srTemp = (srTemp / (sizeof(tab5) / sizeof(tab5[0])));
  71.  
  72. srednia = pow(srGeo, ((double)1 / (double)p));
  73.  
  74. cout << "\n" << "Najwyzsza temperatura w ciagu miesiaca to: " << tab5[0] << "C\n";
  75. cout << "\n" << "Najnizsza temperatura w ciagu miesiaca to: " << tab5[k] << "C\n";
  76. cout << "\n" << "Srednia temperatura w ciagu miesiaca to: " << setprecision(2) << fixed << srTemp << "C\n";
  77. cout << "\n" << "Srednia geometryczna temperatur w ciagu miesiaca to: " << setprecision(2) << fixed << srednia << "C\n";
  78.  
  79. /////////////////////////////////////////OPADY//////////////////////////////////
  80. srGeo = 1;
  81. p = 0;
  82. srTemp = 0;
  83. cout << "Wypelnij pola swoimi pomiarami opadow\n";
  84. cout << "Ile elementow chcesz dodac \n";
  85. cin >> k;
  86. if(k > 0) {
  87. for(int i = 0; i <= k; i++) {
  88. cout << "Podaj jaka wartosc\n";
  89. cin >> tab6[i];
  90.  
  91. if (tab6[i] >= 1) {
  92. srGeo *= tab6[i]; // to jest wzór na geometryczne coś
  93. p += 1;
  94. }
  95. }
  96. } else {
  97. cout << "Nie mozesz podac wartosci ujemnych !";
  98. }
  99.  
  100. cout << "\n";
  101. sort(tab6, tab6 + 32, porownaj);
  102. cin.get(); // najwieksza -> najmniejsza
  103.  
  104. for(int g = 0; g <= k; g++) {
  105. cout << tab6[g] << "C ";
  106. }
  107.  
  108. for (int i = 0; i <= 31; i++) {
  109. srTemp += tab6[i];
  110. }
  111. srTemp = (srTemp / (sizeof(tab6) / sizeof(tab6[0])));
  112.  
  113. srednia = pow(srGeo, ((double)1 / (double)p));
  114.  
  115. cout << "\n" << "Najwyzsze opady w ciagu miesiaca to: " << tab6[0] << "C\n";
  116. cout << "\n" << "Najnizsze opady w ciagu miesiaca to: " << tab6[k] << "C\n";
  117. cout << "\n" << "Srednie opady w ciagu miesiaca to: " << setprecision(2) << fixed << srTemp << "C\n";
  118. cout << "\n" << "Srednie geometryczne opady w ciagu miesiaca to: " << setprecision(2) << fixed << srednia << "C\n";
  119.  
  120. /////////////////////////////////////////PREDKOSC WIATRU//////////////////////////////////
  121. srGeo = 1;
  122. p = 0;
  123. srTemp = 0;
  124. cout << "Wypelnij pola swoimi pomiarami predkosci wiatru\n";
  125. cout << "Ile elementow chcesz dodac \n";
  126. cin >> k;
  127. if(k > 0) {
  128. for(int i = 0; i <= k; i++) {
  129. cout << "Podaj jaka wartosc\n";
  130. cin >> tab7[i];
  131.  
  132. if (tab7[i] >= 1) {
  133. srGeo *= tab7[i]; // to jest wzór na geometryczne coś
  134. p += 1;
  135. }
  136. }
  137. } else {
  138. cout << "Nie mozesz podac wartosci ujemnych !";
  139. }
  140.  
  141. cout << "\n";
  142. sort(tab7, tab7 + 32, porownaj);
  143. cin.get(); // najwieksza -> najmniejsza
  144.  
  145. for(int g = 0; g <= k; g++) {
  146. cout << tab7[g] << "C ";
  147. }
  148.  
  149. for (int i = 0; i <= 31; i++) {
  150. srTemp += tab7[i];
  151. }
  152. srTemp = (srTemp / (sizeof(tab7) / sizeof(tab7[0])));
  153.  
  154. srednia = pow(srGeo, ((double)1 / (double)p));
  155.  
  156. cout << "\n" << "Najwyzsza predkosc wiatru w ciagu miesiaca to: " << tab7[0] << "C\n";
  157. cout << "\n" << "Najnizsza predkosc wiatru w ciagu miesiaca to: " << tab7[k] << "C\n";
  158. cout << "\n" << "Srednia predkosc wiatru w ciagu miesiaca to: " << setprecision(2) << fixed << srTemp << "C\n";
  159. cout << "\n" << "Srednia geometryczna predkosci wiatru w ciagu miesiaca to: " << setprecision(2) << fixed << srednia << "C\n";
  160.  
  161. /////////////////////////////////////////CISNIENIE//////////////////////////////////
  162. srGeo = 1;
  163. p = 0;
  164. srTemp = 0;
  165. cout << "Wypelnij pola swoimi pomiarami cisnien\n";
  166. cout << "Ile elementow chcesz dodac \n";
  167. cin >> k;
  168. if(k > 0) {
  169. for(int i = 0; i <= k; i++) {
  170. cout << "Podaj jaka wartosc\n";
  171. cin >> tab8[i];
  172.  
  173. if (tab8[i] >= 1) {
  174. srGeo *= tab8[i]; // to jest wzór na geometryczne coś
  175. p += 1;
  176. }
  177. }
  178. } else {
  179. cout << "Nie mozesz podac wartosci ujemnych !";
  180. }
  181.  
  182. cout << "\n";
  183. sort(tab8, tab5 + 32, porownaj);
  184. cin.get(); // najwieksza -> najmniejsza
  185.  
  186. for(int g = 0; g <= k; g++) {
  187. cout << tab8[g] << "C ";
  188. }
  189.  
  190. for (int i = 0; i <= 31; i++) {
  191. srTemp += tab8[i];
  192. }
  193. srTemp = (srTemp / (sizeof(tab8) / sizeof(tab8[0])));
  194.  
  195. srednia = pow(srGeo, ((double)1 / (double)p));
  196.  
  197. cout << "\n" << "Najwyzsze cisnienie w ciagu miesiaca to: " << tab8[0] << "C\n";
  198. cout << "\n" << "Najnizsze cisnienie w ciagu miesiaca to: " << tab8[k] << "C\n";
  199. cout << "\n" << "Srednie cisnienie w ciagu miesiaca to: " << setprecision(2) << fixed << srTemp << "C\n";
  200. cout << "\n" << "Srednia geometryczna cisnien w ciagu miesiaca to: " << setprecision(2) << fixed << srednia << "C\n";
  201.  
  202. break;
  203. case 2:
  204. ////////////////////////TEMPERATURA///////////////////////////////
  205. cout << "Dane beda generowane losowo\n";
  206. cout << "Temperatura mierzona codziennie o 12, raz dziennie przez 31 dni\n";
  207. for (int i = 0; i <= 31; i++) {
  208. tab1[i] = rand() % 38 - 15;
  209. cout << tab1[i] << "C, ";
  210.  
  211. // XD <= >=
  212. if (tab1[i] >= 1) {
  213. srGeo *= tab1[i]; // to jest wzór na geometryczne coś
  214. p += 1;
  215. }
  216.  
  217. }
  218. // ???
  219. // for (int c = 0; c <= 31; c++) {
  220. // for (int b = 0; tab1[b] >= 1; b++) {
  221. // srGeo *= tab1[c]; // to jest wzór na geometryczne coś
  222. // p += 1;
  223. // }
  224. // }
  225. // cout << "XDDD \n" << p;
  226.  
  227. cout << "\n";
  228. sort(tab1, tab1 + 32, porownaj);
  229. cin.get(); // najwieksza -> najmniejsza
  230.  
  231. //cout << (sizeof(tab1) / sizeof(tab1[0]));
  232. for (int i = 0; i <= 31; i++) {
  233. srTemp += tab1[i];
  234. }
  235. srTemp = (srTemp / (sizeof(tab1) / sizeof(tab1[0])));
  236.  
  237. srednia = pow(srGeo, ((double)1 / (double)p));
  238.  
  239. // cout << "TEST, srGeo =" << fixed << srGeo << endl;
  240. // cout << "TEST2, p =" << p << endl;
  241. // cout << "TEST3, costam=" << srednia << endl;
  242.  
  243. cout << "\n" << "Najwyzsza temperatura w ciagu miesiaca to: " << tab1[0] << "C\n";
  244. cout << "\n" << "Najnizsza temperatura w ciagu miesiaca to: " << tab1[31] << "C\n";
  245. cout << "\n" << "Srednia temperatura w ciagu miesiaca to: " << setprecision(2) << srTemp << "C\n";
  246. cout << "\n" << "Srednia geometryczna temperatur w ciagu miesiaca to: " << setprecision(2) << srednia << "C\n"; // wyswietla jebaną jedynke kurwy pierdolone
  247. ///////////////////////////////////////////////////////////////////
  248. /*
  249. cout << "\nPo sortowaniu\n";
  250. sort(tab1, tab1 + 32); // sortowanie od najmniejszej do największej
  251. for (int z = 0; z <= 31; z++)cout << tab1[z] << ' ';
  252. cout << "\n";
  253.  
  254. sort(tab1, tab1 + 32, porownaj);
  255. for (int x = 0; x <= 31; x++)cout << tab1[x] << ' ';
  256. cin.get(); // najwieksza -> najmniejsza
  257. */
  258. /////////////////////////////////////////////////////////////////////////////
  259. /////////////////////////////////////OPADY///////////////////////////////////////////
  260. srGeo = 1;
  261. p = 0;
  262. srTemp = 0;
  263. cout << "\nWielkosc Opadow w ciagu 31 dni\n";
  264. for (int i = 0; i <= 31; i++) {
  265. tab2[i] = rand() % 15 + 1;
  266. cout << tab2[i] << "mm ";
  267.  
  268.  
  269. if (tab2[i] >= 1) {
  270. srGeo *= tab2[i];
  271. p++;
  272. }
  273. }
  274.  
  275. sort(tab2, tab2 + 32, porownaj);
  276.  
  277. for (int i = 0; i <= 31; i++) {
  278. srTemp += tab2[i];
  279. }
  280. srTemp = (srTemp / (sizeof(tab2) / sizeof(tab2[0])));
  281. cout << "\n" << "Najwyzsze opady w ciagu miesiaca to: " << tab2[0] << "mm\n";
  282. cout << "\n" << "Najnizsze opady w ciagu miesiaca to: " << tab2[31] << "mm\n";
  283. cout << "\n" << "Srednie opady w ciagu miesiaca to: " << setprecision(2) << srTemp << "mm\n";
  284. // cout << "\n" << "Srednia geometryczna opadow w ciagu miesiaca to: " << setprecision(2) << pow(srGeo, 1 / p) << "C\n";
  285. ////////////////////////////////////////PREDKOSC WIATRU////////////////////////////
  286. srGeo = 1;
  287. p = 0;
  288. cout << "\n";
  289. cout << "\nPredkosc wiatru w ciagu 31 dni\n";
  290. srTemp = 0;
  291. for (int i = 0; i <= 31; i++) {
  292. tab3[i] = rand() % 30 + 5;
  293. cout << tab3[i] << "km/h ";
  294.  
  295.  
  296. if (tab3[i] >= 1) {
  297. srGeo *= tab3[i];
  298. p++;
  299. }
  300. }
  301.  
  302. for (int i = 0; i <= 31; i++) {
  303. srTemp += tab3[i];
  304. }
  305. srTemp = (srTemp / (sizeof(tab3) / sizeof(tab3[0])));
  306. sort(tab3, tab3 + 32, porownaj);
  307. cout << "\n" << "Najwyzsza predkosc wiatru w ciagu miesiaca to: " << tab3[0] << "km/h\n";
  308. cout << "\n" << "Najnizsza predkosc wiatru w ciagu miesiaca to: " << tab3[31] << "km/h\n";
  309. // cout << "\n" << "Srednia geometryczna predkosci wiatru w ciagu miesiaca to: " << setprecision(2) << pow(srGeo, 1 / p) << "km/h\n";
  310. cout << "\n";
  311. ///////////////////////////////////////CISNIENIE//////////////////////////////////////
  312. srGeo = 1;
  313. p = 0;
  314. cout << "\nCisnienie mierzone w ciagu 31 dni\n";
  315. for (int i = 0; i <= 31; i++) {
  316. tab4[i] = rand() % 50 + 970;
  317. cout << tab4[i] << "hPa ";
  318.  
  319.  
  320. if (tab4[i] >= 1) {
  321. srGeo *= tab4[i];
  322. p++;
  323. }
  324. }
  325.  
  326. for (int i = 0; i <= 31; i++) {
  327. srTemp1 += tab4[i];
  328. }
  329. srTemp1 = (srTemp1 / (sizeof(tab4) / sizeof(tab4[0])));
  330. sort(tab4, tab4 + 32, porownaj);
  331. cout << "\n" << "Najwyzsze cisnienie w ciagu miesiaca to: " << tab4[0] << "hPa\n";
  332. cout << "\n" << "Najnizsze cisnienie w ciagu miesiaca to: " << tab4[31] << "hPa\n";
  333. // cout << "\n" << "Srednia geometryczna cisnienia w ciagu miesiaca to: " << setprecision(2) << pow(srGeo, 1 / p) << "hPa\n";
  334. cout << "\n";
  335.  
  336. break;
  337.  
  338. default:
  339. cout << "Nie ma takiej opcji !\n";
  340. break;
  341. }
  342.  
  343. // system("pause");
  344. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement