Форум программистов, компьютерный форум, киберфорум
Наши страницы

Дан текстовый файл; получить строку, в которой наименьшее число знаков препинания - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Функции ввода, просмотра, определения столбца http://www.cyberforum.ru/cpp-beginners/thread889715.html
Напишите программу, проверяя корректность введения размера массива. Дан массив, который содержит м строк и н столбиков . Оформить в виде отдельных функций введение, просмотр и определение номеров...
C++ почему не компилируется ? (сбой при преобразовании в COFF: файл недопустим или поврежден) почему не компилируется ? ( #include <iostream> #include <string.h> using namespace std; int main() { const int maxlen = 100; char input_buffer; char word_buffer; http://www.cyberforum.ru/cpp-beginners/thread889712.html
Создать класс окружность C++
Создать класс окружность, член класса — радиус R. Предусмотреть в классе методы вычисления и вывода сведений о фигуре: площади, длины окружности. Создать производный класс — круглый прямой цилиндр с...
C++ findfirst реализация
Мне нужно найти файл в директории и тут же найденный файл удалить.И так бесконечно,пока пользователь не нажмет стоп.(Ну по нажатию я знаю как сделать:)) А вот как реализовать эту функцию- не знаю....
C++ Не считает сумму http://www.cyberforum.ru/cpp-beginners/thread889687.html
Программа не считае сумму она всегда равно 0 и он ее выводит не проверая условие наверно что-то с процедурами напутал не могу понять что на си пишу первый раз за сегодня научился так сказать( #...
C++ Исключения Надо сделать исключение в программе. У меня есть список. Есть методы добавить в конец списка, в начало списка, удалить елемент который знаходиться после заданого. Для последнего метода надо сделать... подробнее

Показать сообщение отдельно
Olivеr
412 / 408 / 13
Регистрация: 06.10.2011
Сообщений: 832
04.06.2013, 13:51
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
26
27
28
29
#include <iostream>
#include <fstream>
#include <string>
#include <limits>
#include <algorithm>
 
using namespace std;
 
int main()
{
    ifstream text("text.txt"); //файл для чтения
    if (!text.good()) return -1; //если какой-либо флаг badbit, eofbit, failbit установлен, то выход
    string str, min_punct_str; //строка и строка с мин. кол-вом пунктуальных знаков
    size_t punct_count, min_punct_count = numeric_limits<size_t>::max(); //количество пунктуальных знаков в строке с минимальным 
    //количеством пунктуальных знаков и в строке, которая сейчас проверяется
    while ( getline(text, str) ) { //пока из файла можно достать строку
        size_t punct_count =
            count_if( str.begin(), str.end(), ::ispunct ); //считаем сколько в строке пункт. знаков
        if (min_punct_count > punct_count) { //если количество пункт. знаков в проверяемой строке меньше чем 
                //в строке с минимальным количество пункт. знаков, то
            min_punct_str.swap(str); //меняем местами строки (почему не = ? а зачем копировать, если содержимое str больше не нужно? 
        //просто меняем владельца str на min_punct_str
            min_punct_count = punct_count; //устанавливаем новое количество пункт. знаков
        }
    }
    cout << min_punct_str;
    text.close();
    return 0;
}
1
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru