#include #include void usporadani_cisel_vzestupne(float cislo[], int counter) { int promenna, i, j; for (i = 0; i < counter; ++i) { for (j = i + 1; j < counter; ++j) { if (cislo[i] > cislo[j]) { promenna = cislo[i]; cislo[i] = cislo[j]; cislo[j] = promenna; } } } } float vypocet_zisku(float hodnota[],int counter) { float ucinnost = 0.42; float zisk = 0; for(int i = 0; i < counter; ++i) { zisk = zisk + (hodnota[24-i]*ucinnost-hodnota[i+1]); } return zisk; } int main (void) { int pocet_hodin; float cena[24]; float zisk2 = 0; float zisk3 = 0; float ucinnost = 0.42; FILE* CENY; //Analyza vazenych cen za jednotlive hodiny na vnitrodennim trhu za rok 2020 (celkem 8784 hodin) printf("Pocet hodin akumulace (1-12): "); scanf("%d", &pocet_hodin); if(pocet_hodin > 12 || pocet_hodin < 1){ printf("Chybne zadane cislo.\n"); return 102; } else { CENY = fopen("ceny_vnitrodenni.txt","r"); if (!CENY) { printf("Chyba v nacitani.\n"); return 101; } else { //Porovnani cen v jednotlivych dnech - akumulace pri nejnizsich cenach, prodej pri nejvyssich cenach for(int l = 1; l <= 366; ++l) { for (int j = 1; j <= 24; ++j) { fscanf(CENY, "%f\n", &cena[j]); //Usporadani cen za 1 den a vypocet zisku usporadani_cisel_vzestupne(cena, 24); zisk2 = vypocet_zisku(cena, pocet_hodin); } zisk3 = zisk3 + zisk2; } } fclose(CENY); printf("Zisk za rok: %.0f\n", zisk3); } return 0; }