Форум программистов, компьютерный форум CyberForum.ru

файловые и строчные потоки (комментарии) - C++

Войти
Регистрация
Восстановить пароль
 
Smayluk
0 / 0 / 0
Регистрация: 26.11.2011
Сообщений: 43
03.12.2012, 21:11     файловые и строчные потоки (комментарии) #1
Помогите с коментами к даной программе. Задание: Написать программу, которая считывает текст из файла и определяет, сколько в нем слов, состоящих не более чем из четырех букв. Если можна к каждой строчке, кроме библиотек
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
#include <iostream>
#include <fstream>
#include <algorithm>
#include <iterator>
#include <string>
 
using namespace std;
 
bool validate(const string& _str)
{
    return _str.size() <= 4;
}
 
int main( void )
{
    int      nResult = 0;
    ifstream inFile("roman.txt", ios::in);
 
    nResult = count_if(istream_iterator<string>(inFile), istream_iterator<string>(), validate);
    cout << "Count: " << nResult << endl;
 
    system("pause");
    return EXIT_SUCCESS;
}
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
03.12.2012, 21:11     файловые и строчные потоки (комментарии)
Посмотрите здесь:

C++ Файловые потоки и функции
Бинарные файловые потоки C++
C++ Файловые потоки
Файловые потоки C++
C++ Бинарные файловые потоки
C++ Решение задач на файловые потоки
C++ Файловые потоки
C++ Файловые потоки данных
файловые потоки C++
Файловые указатели. Потоки C++
Файловые потоки C++
C++ Файловые потоки в Си и С++

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Vladimir.
155 / 155 / 10
Регистрация: 24.11.2009
Сообщений: 375
03.12.2012, 22:46     файловые и строчные потоки (комментарии) #2
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
using namespace std; //импорт функций и объектов std в глобальное пространство имен.
 
bool validate(const string& _str)
{
/*
Функция-предикат. Получает строку по ссылке, считает её длинну, сравнивает результат с четверкой, возвращает результат сравнения.
*/
    return _str.size() <= 4;
}
 
int main( void )
{
    int      nResult = 0;
    ifstream inFile("roman.txt", ios::in); 
//создаем поток inFile ассоциируя его с фаилом roman.txt (только для операции чтения)
 
 
    nResult = count_if(istream_iterator<string>(inFile), istream_iterator<string>(), validate);
//Ставит счетчик на ноль. Для каждого элемента между istream_iterator<string>(inFile) (начало потока) и istream_iterator<string>() (конец потока *** ) вызывает функцию-предикат, в случае, если последяя возвращает true, увеличивает счётчик на единицу. По окончании работы возвращает значение счётчика.
 
    cout << "Count: " << nResult << endl;
    system("pause");
    return EXIT_SUCCESS;
//вывод результатов и выход.
}
ps: особенность реализации текстовых потоков такова, что по умолчанию пробел будет выступать в качестве разделителя элементов множества (как если бы вводили значения с помощью cin>>) так что итератор будет бежать по словам.
Smayluk
0 / 0 / 0
Регистрация: 26.11.2011
Сообщений: 43
03.12.2012, 23:36  [ТС]     файловые и строчные потоки (комментарии) #3
Спасибо)
Yandex
Объявления
03.12.2012, 23:36     файловые и строчные потоки (комментарии)
Ответ Создать тему
Опции темы

Текущее время: 15:20. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru