przeliczanie znaków w pliku
Ostatnio zmodyfikowano 2015-01-05 18:39
dott94 Temat założony przez niniejszego użytkownika |
przeliczanie znaków w pliku » 2015-01-05 18:14:55 Mam pewne problemy z odczytywaniem liczb z pliku - mam w pliku liczbę rzeczywistą podaną w taki sposób, np. 123456789.12345, na początku sprawdzam, czy jest ona dodatnia czy ujemna (nie sprawia mi to problemu), a następnie tą liczbę muszę podzielić na część całkowitą i ułamkową i wgrać do tablic o wymiarach [n+1][3] (n to ilość cyfr)... z wczytywaniem ilości cyfr w części całkowitej wpadłem na taki pomysł: #include<iostream> #include<iomanip> #include<cstdlib> #include<fstream> using namespace std;
int main() { char x; char nazwaPliku[ 100 ]; fstream plik; cout << "podaj nazwe pliku: "; cin >> nazwaPliku; plik.open( nazwaPliku, ios::in ); if( !plik ) { cout << "Plik " << nazwaPliku << " nie wczytany" << endl; exit( 1 ); } int n = 0; plik.tellp(); while( plik >> x ) { if( x == '.' ) break; else if( isdigit( x ) ) n++; } plik.close();
ilość cyfr przed kropką policzona. no ale tu moja pomysłowość się kończy, bo dalej muszę wczytać ilość cyfr po kropce i kompletnie nie mam żadnego pomysłu jak to zapisać, żeby program zaczynał zliczanie po kropce, mógłby mi ktoś coś podpowiedzieć? będę wdzięczny ;) |
|
1aam2am1 |
» 2015-01-05 18:39:46 wczytaj wszystko do std::string i użyj funkcji find |
|
« 1 » |