Witam,
Mam problem z zadaniem 5.1 z matury próbnej 2014/2015:
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
435Pozytywną 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?
Napisałem taki kod:
#include <iostream>
#include <fstream>
using namespace std;
int main()
{
ifstream odczytZPliku("dziennik.txt");
ofstream zapisDoPliku("wynik5.txt");
int liczba = 0, poprzedniaLiczba, dlugoscSerii = 1, liczbaSeriiDlugich = 0;
odczytZPliku >> poprzedniaLiczba;
while (odczytZPliku >> liczba)
{
if (liczba > poprzedniaLiczba)
{
dlugoscSerii++;
}
else
{
if (dlugoscSerii > 3)
{
liczbaSeriiDlugich++;
}
dlugoscSerii = 1;
}
poprzedniaLiczba = liczba;
}
zapisDoPliku << liczbaSeriiDlugich;
odczytZPliku.close();
zapisDoPliku.close();
system("pause");
return 0;
}
W odpowiedziach jest napisane że prawidłowa odpowiedź to 14, a mi wychodzi 11. Czy mogłby ktoś powiedzieć co robie źle?