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

C++ program wczytuje ostatnią linijkę z TXT 2 razy

Aruba Cloud PRO i VPS, Openstack, VMWare, MS Hyper-V
0 głosów
303 wizyt
pytanie zadane 9 listopada 2015 w C i C++ przez Quiku Obywatel (1,370 p.)
void wyswietlanie_ocen()
{
    oceny.open("oceny.txt", ios::in );
    if(oceny.is_open())
        {
        string ocena, waga;
        int i=1;

        while(!oceny.eof())
        {
        oceny >> ocena;
        oceny >> waga;
        cout << "Ocena " << i <<": " << ocena;
        cout << ", waga " << i <<": " << waga <<endl;
        i++;
        }       oceny.close();
        }

    else cout << "Nie udalo sie otworzyc pliku!" <<endl;
}

Kojelna dawka problemów z plikami TXT. Program ma wyświetlić:
"ocena 1: 1, waga 1:1
ocena 2: 2, waga 2:2
ocena 3: 3, waga 3:3"

natomiast wypluwa coś takiego:

"ocena 1: 1, waga 1:1
ocena 2: 2, waga 2:2
ocena 3: 3, waga 3:3
ocena 4: 3, waga 4:3"

Dane w TXT to:
1
1
2
2
3
3

Ktoś coś podpowie?

1 odpowiedź

+1 głos
odpowiedź 9 listopada 2015 przez niezalogowany
Tak się dzieje gdy się używa metody eof(), zwraca true gdy jakiś odczyt wyjdzie poza plik. Użyj w warunku while getline albo plik>>oceny>>waga;

Podobne pytania

+1 głos
1 odpowiedź 159 wizyt
pytanie zadane 6 marca 2021 w C i C++ przez Drożdżówka Obywatel (1,870 p.)
0 głosów
1 odpowiedź 377 wizyt
pytanie zadane 30 lipca 2020 w PHP przez Bakkit Dyskutant (7,600 p.)
0 głosów
1 odpowiedź 589 wizyt
pytanie zadane 15 października 2017 w Grafika i multimedia przez DODO Bywalec (2,950 p.)

91,824 zapytań

140,490 odpowiedzi

316,950 komentarzy

61,159 pasjonatów

Motyw:

Akcja Pajacyk

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

Oto dwie polecane książki warte uwagi. Pełną listę znajdziesz tutaj.

...