• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

Zadanie maturalne 2014 Zawody sportowe 5.3

Cloud VPS
0 głosów
800 wizyt
pytanie zadane 9 kwietnia 2021 w C i C++ przez Pawolo122 Początkujący (330 p.)

Mam problem z zadaniem 5.3, może trochę je sobie skomplikowałem, ale jestem ciekaw, dlaczego rozwiązanie jest złe. Po skompilowaniu wynik się nie wyświetla.

void zadanie3()
{
    int a;
    int max_size = INT_MIN;
    vector<int>tab;
    vector<int>wyniki;
    vector<int>wyniki2;
    ifstream in("dziennik.txt");
    ofstream of("wyniki.txt");

    for(int i=0; i<310; i++)
    {
        in >> a;
        tab.push_back(a);
    }

    for(int i=0; i<tab.size(); i++)
    {
        if(tab[i]>tab[i-1])
            wyniki.push_back(tab[i-1]);

        if(wyniki.size()>max_size)
        {
            for(int j=0; j<wyniki.size(); j++)
            {
                wyniki2[j] = wyniki[j];
           }
        }
        if(tab[i]<=tab[i-1])
            wyniki.clear();
    }

    int wynik = wyniki2[wyniki.size()-1] - wyniki2[0];
    cout << wynik << endl;
}

Plik z danymi: https://files.fm/f/xjnynm2jp

1 odpowiedź

0 głosów
odpowiedź 9 kwietnia 2021 przez tangarr Mędrzec (155,180 p.)
W linijkach 19, 20 o 29 używasz indeksu -1 na wektorze wyniki. W linijce 26 i 33 używasz zbyt wysokich indeksów na wektorze wyniki2.

Logika programu zupełnie nie pokrywa się z celem zadania. Przemyśl to sobie od nowa. Najlepiej rozrysuj to sobie na kartce i prześledź działanie algorytmu.
komentarz 13 kwietnia 2021 przez Pawolo122 Początkujący (330 p.)
Ok dzięki, już sobie poradziłem

Podobne pytania

0 głosów
5 odpowiedzi 1,620 wizyt
pytanie zadane 19 marca 2016 w C i C++ przez Hannn Nowicjusz (190 p.)
0 głosów
2 odpowiedzi 3,628 wizyt
pytanie zadane 1 lutego 2016 w C i C++ przez Drakusman Nowicjusz (150 p.)
+1 głos
2 odpowiedzi 1,754 wizyt
pytanie zadane 12 lutego 2017 w C i C++ przez silnyjakzubr Nowicjusz (240 p.)

93,463 zapytań

142,456 odpowiedzi

322,725 komentarzy

62,840 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj

Kursy INF.02 i INF.03
...