среда, 25 сентября 2013 г.

с++ / текст (от n до m)

Дан текстовый файл, содержащий буквенные и цифровые символы. Требуется скопировать часть файла с позиции n до позиции m в поток и посчитать в этой части количество цифровых символов.

#include <fstream>
#include <iostream>
using namespace std;
int main()
{   
    ifstream ifs("1.txt");
    if(!ifs) 
    {
        cerr << "File error." << endl;
        return 1;
    }
    
    int n, m;
    do
    {
        (cin >> n >> m).get();
    } 
while (n < 0 || m < 0 || m <= n);
    ifs.seekg(n);
    int kol = 0;
    char temp;
    while(ifs.get(temp))
    {
        if(isdigit(temp))
        {
            kol++;
            cout << temp << ' ';
        }
        ++n;
        if (n == m) break; 
    }
    cout << endl << kol << endl;
    cin.get();
    return 0;
}

Комментариев нет:

Отправить комментарий