• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

Quiz z tutorialu problem z kodem (wczytywanie pytania)

Object Storage Arubacloud
0 głosów
120 wizyt
pytanie zadane 7 września 2015 w C i C++ przez lbogacz Nowicjusz (200 p.)

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;
}

 

1 odpowiedź

0 głosów
odpowiedź 7 września 2015 przez lbogacz Nowicjusz (200 p.)
Znalazlem blad dlaczego tak wczytywal dziwnie pytania z odpowiedziami. Nr linijki 45 jak jest inkrementacja zamiast nr_linii powinienem wstawic nr_pytania. Tylko niestety nadal nie wczytuje mi 2 pierwszych linii z pliku .txt tylko odrazu przechodzi do pytania ale juz poprawnego:)
komentarz 7 września 2015 przez lbogacz Nowicjusz (200 p.)
dobra dziala wszystko poprawnie.

Podobne pytania

0 głosów
3 odpowiedzi 1,148 wizyt
pytanie zadane 7 października 2015 w C i C++ przez Adam Jakś Dyskutant (8,940 p.)
0 głosów
2 odpowiedzi 222 wizyt
pytanie zadane 19 sierpnia 2015 w C i C++ przez lukasz_m Obywatel (1,380 p.)
0 głosów
1 odpowiedź 167 wizyt
pytanie zadane 19 stycznia 2016 w C i C++ przez Informatyk# Obywatel (1,060 p.)

92,551 zapytań

141,393 odpowiedzi

319,522 komentarzy

61,936 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj.

Akademia Sekuraka

Kolejna edycja największej imprezy hakerskiej w Polsce, czyli Mega Sekurak Hacking Party odbędzie się już 20 maja 2024r. Z tej okazji mamy dla Was kod: pasjamshp - jeżeli wpiszecie go w koszyku, to wówczas otrzymacie 40% zniżki na bilet w wersji standard!

Więcej informacji na temat imprezy znajdziecie tutaj. Dziękujemy ekipie Sekuraka za taką fajną zniżkę dla wszystkich Pasjonatów!

Akademia Sekuraka

Niedawno wystartował dodruk tej świetnej, rozchwytywanej książki (około 940 stron). Mamy dla Was kod: pasja (wpiszcie go w koszyku), dzięki któremu otrzymujemy 10% zniżki - dziękujemy zaprzyjaźnionej ekipie Sekuraka za taki bonus dla Pasjonatów! Książka to pierwszy tom z serii o ITsec, który łagodnie wprowadzi w świat bezpieczeństwa IT każdą osobę - warto, polecamy!

...