Siemka może mi ktoś wytłumaczyć dlaczego ten algorytm mi źle działa? Treść zadania
Mateusz cały rok przygotowuje się do zawodów sportowych w skoku w dal. Codziennie trenuje, a wynik – długość najdłuższego skoku podaną w centymetrach – zapisuje w pliku tekstowym dziennik.txt. W pliku tym znajduje się 310 liczb odpowiadających długościom najlepszych skoków Mateusza w kolejnych dniach treningowych. Każda liczba jest zapisana w osobnym wierszu.
Przykład: 436 571 569 435
Pozytywną serią treningową Mateusz nazywa każdy ciąg kolejnych dni treningowych, w czasie których uzyskuje on każdego następnego dnia treningu lepszy rezultat niż dnia poprzedniego i którego to ciągu nie można przedłużyć (jest to ostatni zanotowany wynik albo wynik z następnego dnia jest gorszy).
Przykład: 478 475 470 480 481 481 475 477 480 482 470
W tym przypadku najdłuższa pozytywna seria treningowa (podkreślona) trwała 4 dni, a Mateusz w jej trakcie poprawił swój wynik o 482–475=7 centymetrów. W wybranym przez siebie języku programowania napisz program, za pomocą którego uzyskasz odpowiedzi na poniższe pytania.
Zadanie 5.1. Ile Mateusz miał pozytywnych serii treningowych dłuższych niż 3 dni?
#include <iostream>
#include <fstream>
using namespace std;
int main()
{
int tab[310],a=0;
ifstream odczyt("dziennik.txt");
while(!odczyt.eof())
{
odczyt>>tab[a];
a++;
}
int b=a+1,i=1,ilosc_serii=0;
a=0;
while(a+1<=310)
{
if(tab[a]<tab[a+1])
{
a++;
i++;
}
else
{
a++;
if(i>=3)
{
ilosc_serii++;
i=1;
}
}
}
cout<<ilosc_serii<<endl;
return 0;
}