Witam mam taki problem a mianowicie,
wlasnie ucze sie programowania C++ i jestem na 7 odciku z tutorali czyli tworzenie quizu. Po wpisaniu calego kodu i uruchomieniu programu odrazu wyswietla mi sie pierwsze pytanie i odpowiedzi do ostatniego pytania. Po kliknieciu odpowiedzi pojawia sie kolejna mozliwosc wyboru odpowiedzi ale bez pytania i az tak 5 razy. Po skonczeniue program normalnie zlicza punkty i pokazuje wynik na koncu. Problem jest taki ze nie pokazuje mi pytan tylko raz tak jak wczesniej pisalem. Porownywalem kod z kodem na tutorialu i nie znalazlem zadnej roznicy(moze cos przeoczylem) Prosba o pomoc co moze byc nie tak.
Z gory dziekuje
#include <iostream>
#include <fstream>
#include <cstdlib>
#include <algorithm>
#include <string>
using namespace std;
string temat, nick;
string tresc[5];
string odpA[5], odpB[5], odpC[5], odpD[5];
string poprawna[5];
string odpowiedz;
int punkty=0;
int main()
{
int nr_linii=1;
string linia;
int nr_pytania=0;
fstream plik;
plik.open("quiz.txt",ios::in);
if (plik.good()==false)
{
cout<<"Plik nie istnieje!";
exit(0);
}
while(getline(plik,linia))
{
switch(nr_linii)
{
case 1: temat=linia; break;
case 2: nick=linia; break;
case 3: tresc[nr_pytania] = linia; break;
case 4: odpA[nr_pytania] = linia; break;
case 5: odpB[nr_pytania] = linia; break;
case 6: odpC[nr_pytania] = linia; break;
case 7: odpD[nr_pytania] = linia; break;
case 8: poprawna[nr_pytania] = linia; break;
}
if (nr_linii==8) {nr_linii=2; nr_linii++;}
nr_linii++;
}
plik.close();
for(int i=0; i<=4; i++)
{
cout<<endl<<tresc[i]<<endl;
cout<<"A. "<<odpA[i]<<endl;
cout<<"B. "<<odpB[i]<<endl;
cout<<"C. "<<odpC[i]<<endl;
cout<<"D. "<<odpD[i]<<endl;
cout<<"Twoja odpowiedz: ";
cin>>odpowiedz;
transform(odpowiedz.begin(),odpowiedz.end(),odpowiedz.begin(), ::tolower);
if(odpowiedz==poprawna[i])
{
cout<<"Gratulacje zdobywasz punkt"<<endl;
punkty++;
}
else
{
cout<<"Zle nie ma puntku"<<endl<<"Poprawna odpowiedz to:"<<poprawna[i]<<endl;
}
}
cout<<"Koniec"<<endl<<"Zdobyte punkty "<<punkty<<endl;
return 0;
}