void wczytaj()
{
fstream plik;
plik.open("quiz.txt", ios::in);
if(plik.good()==false)
{
cout<<"NIE UDALO SIE OTWORZYC PLIKU!";
exit(0);
}
int nr_linii=(nr_pytania-1)*6+1;
int aktualny_nr=1;
string linia;
while(getline(plik, linia))
{
if(aktualny_nr==nr_linii) tresc=linia;
if(aktualny_nr==nr_linii+1) a=linia;
if(aktualny_nr==nr_linii+2) b=linia;
if(aktualny_nr==nr_linii+3) c=linia;
if(aktualny_nr==nr_linii+4) d=linia;
if(aktualny_nr==nr_linii+5) poprawna=linia;
aktualny_nr++;
}
plik.close();
}
Cześć wszystkim! Mam pytanie dotyczące powyższego kodu. Jestem aktualnie na 2 odcinku kursu obiektowego C++ u Pana Mirosława i chciałbym się Was zapytać czy dobrze rozumiem działanie zawartej pętli while:
w przypadku, gdy nr_pytania jest równy 1, to nr_linii też jest równy 1 i oznacza 1 linię w pliku .txt, w której rzeczywiście zaczyna się pierwsze pytanie, więc pętla while od razu wykonuje wczytywanie pierwszego pytania. Zastanawia mnie, czy w przypadku, gdy nr_pytania jest równy 2, czyli nr_linii jest równy 7, to pętla najpierw wykonuje się 6 razy ( a właściwie wykona się tylko linia aktualny_nr++; ), aby za siódmym rozpocząć wczytywanie drugiego pytania?