[C++] Lekcja 33 problem z zadaniem domowym
Panel użytkownika
Nazwa użytkownika:
Hasło:
Nie masz jeszcze konta?
Zarejestruj się!

[C++] Lekcja 33 problem z zadaniem domowym

AutorWiadomość
Temat założony przez niniejszego użytkownika
[C++] Lekcja 33 problem z zadaniem domowym
» 2019-05-24 21:28:29
Treść zadania:
Napisz program, który odczytuje co trzeci znak z pliku. Użyj do tego metod poznanych w niniejszym rozdziale. Przetestuj poprawność działania programu na bardzo krótkim pliku tekstowym, wypisując co trzeci odczytany znak na ekranie.

Napisałem taki oto kod:
C/C++
#include <iostream>
#include <fstream>

using namespace std;

int main()
{
    ifstream plik( "zadanie_domowe_25.txt" );
    if( !plik.good() )
         return 0;
   
    char cZnak;
    plik.seekg( 0 );
    while( !plik.fail() )
    {
        plik >> cZnak;
        cout << cZnak << "; ";
        plik.seekg( 2, ios::cur );
    }
    return 0;
}

W pliku tekstowym mam "Przedmiescie Szczebrzeszynskie". Program niby działa dobrze ale wyswietla na końcu dwa razy znak "i;". Co robie źle? Z góry dziekuje za pomoc.
P-174711
» 2019-05-24 23:24:04
Gdy plik się skończy, operacja odczytu zakończy się błędem, ale i tak wypisujesz 'wczytaną' wartość.
P-174712
« 1 »
 Strona 1 z 1