Cześć! Mam za zadanie przygotować 1) kod który policzy i wyświetli liczbę linii w pliku inf.txt, oraz 2) żeby wyświetlił w kolejnych liniach czy wyraz ma parzystą czy nieparzystą liczbę znaków. Pierwszy punkt mam zrobiony, jednak w 2 punkcie mam błąd w kodzie, mianowicie gdy uruchamiam liczba linii wyświetla się w nieodpowiedniej kolejności, i czasami gdy wyraz ma parzystą liczbę znaków, wyświetla się że ma nieparzystą. Oraz pętla z sprawdzeniem czy wyraz ma parzystą liczbę znaków wykonuje się więcej razy niż ilość linijek w pliku. Nie wiem jak to rozwiązać, czy mógłby mi ktoś pomóc?
Kod:
#include <iostream>
#include <fstream>
#include <string>
using namespace std;
int main()
{
fstream plik;
string slowo;
string linia;
int policz=0;
plik.open("inf.txt", ios::in);
if(plik.good()==true)
{
while(!plik.eof())
{
getline(plik, linia);
policz++;
for(int i=0; i<=policz; i++)
{
if(slowo.length()%2==0)
{
cout<<"Slowo w "<<i<<" linii ma parzysta liczbe znakow"<<endl;
}
else
{
cout<<"Slowo w "<<i<<" linii nie ma parzysta liczbe znakow"<<endl;
}
}
}
plik.close();
}
cout<<"Jest "<<policz<<" linii"<<endl;
return 0;
}