Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include<iostream>
- #include<stdlib.h>
- #include<iomanip>
- #include<math.h>
- #include<algorithm>
- using namespace std;
- bool porownaj(int a, int b) {
- //Sprawdzamy, czy pierwszy element jeszt większy od drugiego
- return a > b;
- }
- int main() {
- double srTemp = 0, srGeo = 1;
- int srTemp1 = 0;
- int x, k, y, p = 0;
- ////////Dane losowe;
- int tab1[31];
- int tab2[31];
- int tab3[31];
- int tab4[31];
- ////////Dane wprowadzane z palca
- int tab5[31] = {};
- int tab6[31] = {};
- int tab7[31] = {};
- int tab8[31] = {};
- double srednia;
- //srand(time(NULL));
- cout << "Wybierz co chcesz zrobic\n";
- cout << "\n";
- cout << "1 - Wypelnij stacje meterelogiczna wlasnymi danymi.\n";
- cout << "2 - Wypelnij stacje meterelogiczna wygenerowanymi danymi.\n";
- cout << "\n";
- cin >> x;
- switch (x) {
- case 1:
- /////////////////////////////////////////TEMPERATURA//////////////////////////////////
- cout << "Wypelnij pola swoimi pomiarami temperatur\n";
- cout << "Ile elementow chcesz dodac \n";
- cin >> k;
- if(k > 0) {
- for(int i = 0; i <= k; i++) {
- cout << "Podaj jaka wartosc\n";
- cin >> tab5[i];
- if (tab5[i] >= 1) {
- srGeo *= tab5[i]; // to jest wzór na geometryczne coś
- p += 1;
- }
- }
- } else {
- cout << "Nie mozesz podac wartosci ujemnych !";
- }
- cout << "\n";
- sort(tab5, tab5 + 32, porownaj);
- cin.get(); // najwieksza -> najmniejsza
- for(int g = 0; g <= k; g++) {
- cout << tab5[g] << "C ";
- }
- for (int i = 0; i <= 31; i++) {
- srTemp += tab5[i];
- }
- srTemp = (srTemp / (sizeof(tab5) / sizeof(tab5[0])));
- srednia = pow(srGeo, ((double)1 / (double)p));
- cout << "\n" << "Najwyzsza temperatura w ciagu miesiaca to: " << tab5[0] << "C\n";
- cout << "\n" << "Najnizsza temperatura w ciagu miesiaca to: " << tab5[k] << "C\n";
- cout << "\n" << "Srednia temperatura w ciagu miesiaca to: " << setprecision(2) << fixed << srTemp << "C\n";
- cout << "\n" << "Srednia geometryczna temperatur w ciagu miesiaca to: " << setprecision(2) << fixed << srednia << "C\n";
- /////////////////////////////////////////OPADY//////////////////////////////////
- srGeo = 1;
- p = 0;
- srTemp = 0;
- cout << "Wypelnij pola swoimi pomiarami opadow\n";
- cout << "Ile elementow chcesz dodac \n";
- cin >> k;
- if(k > 0) {
- for(int i = 0; i <= k; i++) {
- cout << "Podaj jaka wartosc\n";
- cin >> tab6[i];
- if (tab6[i] >= 1) {
- srGeo *= tab6[i]; // to jest wzór na geometryczne coś
- p += 1;
- }
- }
- } else {
- cout << "Nie mozesz podac wartosci ujemnych !";
- }
- cout << "\n";
- sort(tab6, tab6 + 32, porownaj);
- cin.get(); // najwieksza -> najmniejsza
- for(int g = 0; g <= k; g++) {
- cout << tab6[g] << "C ";
- }
- for (int i = 0; i <= 31; i++) {
- srTemp += tab6[i];
- }
- srTemp = (srTemp / (sizeof(tab6) / sizeof(tab6[0])));
- srednia = pow(srGeo, ((double)1 / (double)p));
- cout << "\n" << "Najwyzsze opady w ciagu miesiaca to: " << tab6[0] << "C\n";
- cout << "\n" << "Najnizsze opady w ciagu miesiaca to: " << tab6[k] << "C\n";
- cout << "\n" << "Srednie opady w ciagu miesiaca to: " << setprecision(2) << fixed << srTemp << "C\n";
- cout << "\n" << "Srednie geometryczne opady w ciagu miesiaca to: " << setprecision(2) << fixed << srednia << "C\n";
- /////////////////////////////////////////PREDKOSC WIATRU//////////////////////////////////
- srGeo = 1;
- p = 0;
- srTemp = 0;
- cout << "Wypelnij pola swoimi pomiarami predkosci wiatru\n";
- cout << "Ile elementow chcesz dodac \n";
- cin >> k;
- if(k > 0) {
- for(int i = 0; i <= k; i++) {
- cout << "Podaj jaka wartosc\n";
- cin >> tab7[i];
- if (tab7[i] >= 1) {
- srGeo *= tab7[i]; // to jest wzór na geometryczne coś
- p += 1;
- }
- }
- } else {
- cout << "Nie mozesz podac wartosci ujemnych !";
- }
- cout << "\n";
- sort(tab7, tab7 + 32, porownaj);
- cin.get(); // najwieksza -> najmniejsza
- for(int g = 0; g <= k; g++) {
- cout << tab7[g] << "C ";
- }
- for (int i = 0; i <= 31; i++) {
- srTemp += tab7[i];
- }
- srTemp = (srTemp / (sizeof(tab7) / sizeof(tab7[0])));
- srednia = pow(srGeo, ((double)1 / (double)p));
- cout << "\n" << "Najwyzsza predkosc wiatru w ciagu miesiaca to: " << tab7[0] << "C\n";
- cout << "\n" << "Najnizsza predkosc wiatru w ciagu miesiaca to: " << tab7[k] << "C\n";
- cout << "\n" << "Srednia predkosc wiatru w ciagu miesiaca to: " << setprecision(2) << fixed << srTemp << "C\n";
- cout << "\n" << "Srednia geometryczna predkosci wiatru w ciagu miesiaca to: " << setprecision(2) << fixed << srednia << "C\n";
- /////////////////////////////////////////CISNIENIE//////////////////////////////////
- srGeo = 1;
- p = 0;
- srTemp = 0;
- cout << "Wypelnij pola swoimi pomiarami cisnien\n";
- cout << "Ile elementow chcesz dodac \n";
- cin >> k;
- if(k > 0) {
- for(int i = 0; i <= k; i++) {
- cout << "Podaj jaka wartosc\n";
- cin >> tab8[i];
- if (tab8[i] >= 1) {
- srGeo *= tab8[i]; // to jest wzór na geometryczne coś
- p += 1;
- }
- }
- } else {
- cout << "Nie mozesz podac wartosci ujemnych !";
- }
- cout << "\n";
- sort(tab8, tab5 + 32, porownaj);
- cin.get(); // najwieksza -> najmniejsza
- for(int g = 0; g <= k; g++) {
- cout << tab8[g] << "C ";
- }
- for (int i = 0; i <= 31; i++) {
- srTemp += tab8[i];
- }
- srTemp = (srTemp / (sizeof(tab8) / sizeof(tab8[0])));
- srednia = pow(srGeo, ((double)1 / (double)p));
- cout << "\n" << "Najwyzsze cisnienie w ciagu miesiaca to: " << tab8[0] << "C\n";
- cout << "\n" << "Najnizsze cisnienie w ciagu miesiaca to: " << tab8[k] << "C\n";
- cout << "\n" << "Srednie cisnienie w ciagu miesiaca to: " << setprecision(2) << fixed << srTemp << "C\n";
- cout << "\n" << "Srednia geometryczna cisnien w ciagu miesiaca to: " << setprecision(2) << fixed << srednia << "C\n";
- break;
- case 2:
- ////////////////////////TEMPERATURA///////////////////////////////
- cout << "Dane beda generowane losowo\n";
- cout << "Temperatura mierzona codziennie o 12, raz dziennie przez 31 dni\n";
- for (int i = 0; i <= 31; i++) {
- tab1[i] = rand() % 38 - 15;
- cout << tab1[i] << "C, ";
- // XD <= >=
- if (tab1[i] >= 1) {
- srGeo *= tab1[i]; // to jest wzór na geometryczne coś
- p += 1;
- }
- }
- // ???
- // for (int c = 0; c <= 31; c++) {
- // for (int b = 0; tab1[b] >= 1; b++) {
- // srGeo *= tab1[c]; // to jest wzór na geometryczne coś
- // p += 1;
- // }
- // }
- // cout << "XDDD \n" << p;
- cout << "\n";
- sort(tab1, tab1 + 32, porownaj);
- cin.get(); // najwieksza -> najmniejsza
- //cout << (sizeof(tab1) / sizeof(tab1[0]));
- for (int i = 0; i <= 31; i++) {
- srTemp += tab1[i];
- }
- srTemp = (srTemp / (sizeof(tab1) / sizeof(tab1[0])));
- srednia = pow(srGeo, ((double)1 / (double)p));
- // cout << "TEST, srGeo =" << fixed << srGeo << endl;
- // cout << "TEST2, p =" << p << endl;
- // cout << "TEST3, costam=" << srednia << endl;
- cout << "\n" << "Najwyzsza temperatura w ciagu miesiaca to: " << tab1[0] << "C\n";
- cout << "\n" << "Najnizsza temperatura w ciagu miesiaca to: " << tab1[31] << "C\n";
- cout << "\n" << "Srednia temperatura w ciagu miesiaca to: " << setprecision(2) << srTemp << "C\n";
- cout << "\n" << "Srednia geometryczna temperatur w ciagu miesiaca to: " << setprecision(2) << srednia << "C\n"; // wyswietla jebaną jedynke kurwy pierdolone
- ///////////////////////////////////////////////////////////////////
- /*
- cout << "\nPo sortowaniu\n";
- sort(tab1, tab1 + 32); // sortowanie od najmniejszej do największej
- for (int z = 0; z <= 31; z++)cout << tab1[z] << ' ';
- cout << "\n";
- sort(tab1, tab1 + 32, porownaj);
- for (int x = 0; x <= 31; x++)cout << tab1[x] << ' ';
- cin.get(); // najwieksza -> najmniejsza
- */
- /////////////////////////////////////////////////////////////////////////////
- /////////////////////////////////////OPADY///////////////////////////////////////////
- srGeo = 1;
- p = 0;
- srTemp = 0;
- cout << "\nWielkosc Opadow w ciagu 31 dni\n";
- for (int i = 0; i <= 31; i++) {
- tab2[i] = rand() % 15 + 1;
- cout << tab2[i] << "mm ";
- if (tab2[i] >= 1) {
- srGeo *= tab2[i];
- p++;
- }
- }
- sort(tab2, tab2 + 32, porownaj);
- for (int i = 0; i <= 31; i++) {
- srTemp += tab2[i];
- }
- srTemp = (srTemp / (sizeof(tab2) / sizeof(tab2[0])));
- cout << "\n" << "Najwyzsze opady w ciagu miesiaca to: " << tab2[0] << "mm\n";
- cout << "\n" << "Najnizsze opady w ciagu miesiaca to: " << tab2[31] << "mm\n";
- cout << "\n" << "Srednie opady w ciagu miesiaca to: " << setprecision(2) << srTemp << "mm\n";
- // cout << "\n" << "Srednia geometryczna opadow w ciagu miesiaca to: " << setprecision(2) << pow(srGeo, 1 / p) << "C\n";
- ////////////////////////////////////////PREDKOSC WIATRU////////////////////////////
- srGeo = 1;
- p = 0;
- cout << "\n";
- cout << "\nPredkosc wiatru w ciagu 31 dni\n";
- srTemp = 0;
- for (int i = 0; i <= 31; i++) {
- tab3[i] = rand() % 30 + 5;
- cout << tab3[i] << "km/h ";
- if (tab3[i] >= 1) {
- srGeo *= tab3[i];
- p++;
- }
- }
- for (int i = 0; i <= 31; i++) {
- srTemp += tab3[i];
- }
- srTemp = (srTemp / (sizeof(tab3) / sizeof(tab3[0])));
- sort(tab3, tab3 + 32, porownaj);
- cout << "\n" << "Najwyzsza predkosc wiatru w ciagu miesiaca to: " << tab3[0] << "km/h\n";
- cout << "\n" << "Najnizsza predkosc wiatru w ciagu miesiaca to: " << tab3[31] << "km/h\n";
- // cout << "\n" << "Srednia geometryczna predkosci wiatru w ciagu miesiaca to: " << setprecision(2) << pow(srGeo, 1 / p) << "km/h\n";
- cout << "\n";
- ///////////////////////////////////////CISNIENIE//////////////////////////////////////
- srGeo = 1;
- p = 0;
- cout << "\nCisnienie mierzone w ciagu 31 dni\n";
- for (int i = 0; i <= 31; i++) {
- tab4[i] = rand() % 50 + 970;
- cout << tab4[i] << "hPa ";
- if (tab4[i] >= 1) {
- srGeo *= tab4[i];
- p++;
- }
- }
- for (int i = 0; i <= 31; i++) {
- srTemp1 += tab4[i];
- }
- srTemp1 = (srTemp1 / (sizeof(tab4) / sizeof(tab4[0])));
- sort(tab4, tab4 + 32, porownaj);
- cout << "\n" << "Najwyzsze cisnienie w ciagu miesiaca to: " << tab4[0] << "hPa\n";
- cout << "\n" << "Najnizsze cisnienie w ciagu miesiaca to: " << tab4[31] << "hPa\n";
- // cout << "\n" << "Srednia geometryczna cisnienia w ciagu miesiaca to: " << setprecision(2) << pow(srGeo, 1 / p) << "hPa\n";
- cout << "\n";
- break;
- default:
- cout << "Nie ma takiej opcji !\n";
- break;
- }
- // system("pause");
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement