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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
bmwkkk
0 / 0 / 0
Регистрация: 27.11.2012
Сообщений: 5
#1

Подсчет символов в файле - C++

27.11.2012, 02:21. Просмотров 662. Ответов 7
Метки нет (Все метки)

Всем привет! Прошу помощи)
Надо написать программу, суть которой заключается вот в чем:
программе дается файл *.txt, она считывает его и выводит статистику, сколько в файле содержится:
1)латинских букв
2)знаков препинания
3)спец.символов (@ # $ % ^ & и т.п.)

Заранее огромное спасибо за помощь.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
27.11.2012, 02:21
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Подсчет символов в файле (C++):

Подсчет символов в файле - C++
Дан текстовый файл, где в первой строке введено некоторое число N. Во второй строке находятся N элементов(чисел), введенных через пробелы....

Подсчет символов в файле - C++
Нужно найти сколько в файле букв (а,б,в...) алфавита. Не могу понять как делать. Начал с самого простого char alphabet = { 'А',...

Подсчет количества символов в файле - C++
дан файл в нем содержится допустим 40 символов нужно чтоб программа подсчитала количество символов в файле и вывела на экран это количество...

Подсчет символов в файле. Не пашет - C++
Добрый день! Пытаюсь в никнуть в основу основ С++ при помощи С++ Builder v.6 Есть пример: #pragma hdrstop #include <stdio.h>...

Подсчет символов пробелов и строк в файле - C++
Дан текстовый файл. Подсчитать в нем общее количество символов, преобразовать эту величину к размеру файла в килобайтах, вывести также...

Подсчет кол-ва символов в строке во входном файле - C++
Подскажите как подсчитать кол-во символов в строке, введенная из файла, тип char. Заранее спасибо.

7
MrGluck
Модератор
Эксперт CЭксперт С++
7278 / 4439 / 650
Регистрация: 29.11.2010
Сообщений: 12,017
27.11.2012, 03:03 #2
Что для тебя значит
знаков препинания
?
0
bmwkkk
0 / 0 / 0
Регистрация: 27.11.2012
Сообщений: 5
27.11.2012, 03:04  [ТС] #3
точка, запятая, знак вопроса, восклицания
0
MrGluck
Модератор
Эксперт CЭксперт С++
7278 / 4439 / 650
Регистрация: 29.11.2010
Сообщений: 12,017
27.11.2012, 03:25 #4
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
30
31
#include <iostream>
#include <fstream>
#include <algorithm>
#include <iterator>
#include <string>
#include <cctype>
 
int main()
{
    std::string special="()[]{}\"@#$%^&*/|\\ ;:'<>`~-+";
    std::ifstream ifs("text.txt");
    if (!ifs)
    {
        std::cerr<< "No file\n";
        return 1;
    }
    int nChars = 0, nPunct = 0, nSpecial = 0;
 
    std::for_each(std::istream_iterator<char>(ifs),
         std::istream_iterator<char>(),
         [&nChars, &nPunct, &nSpecial, &special](char c)
         {
             if      (isalpha (c)) nChars ++;
             else if (ispunct (c)) nPunct ++;
             if (special.find (c) != std::string::npos) nSpecial ++;
         } );
    std::cout<< "Characters: "       << nChars  << std::endl
             << "Punctuation marks: "<< nPunct  << std::endl
             << "Special marks: "    << nSpecial<< std::endl;
    return 0;
}
точка, запятая, знак вопроса, восклицания
компилятор считает по-другому
0
bmwkkk
0 / 0 / 0
Регистрация: 27.11.2012
Сообщений: 5
27.11.2012, 03:29  [ТС] #5
компилятор выдает ошибку
[IMG]http://s019.***********/i605/1211/33/ea3ee5e0fb60t.jpg[/IMG]
0
MrGluck
Модератор
Эксперт CЭксперт С++
7278 / 4439 / 650
Регистрация: 29.11.2010
Сообщений: 12,017
27.11.2012, 03:34 #6
У вас не поддерживается С++11, в т.ч. лямбда - выражения.
0
bmwkkk
0 / 0 / 0
Регистрация: 27.11.2012
Сообщений: 5
27.11.2012, 03:39  [ТС] #7
VS 2010 подойдет? или какую среду установить в таком случае?
0
MrGluck
Модератор
Эксперт CЭксперт С++
7278 / 4439 / 650
Регистрация: 29.11.2010
Сообщений: 12,017
27.11.2012, 03:44 #8
Цитата Сообщение от bmwkkk Посмотреть сообщение
VS 2010 подойдет? или какую среду установить в таком случае?
Это зависит не от среды, а от компилятора. VS 2012 поддерживает лямбда-выражения, последнии версии gcc и MinGW также.

P.S. еще можно поставить boost::lambda, хотя думаю для вас это будет сложно

Добавлено через 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
25
26
27
28
#include <iostream>
#include <fstream>
#include <string>
#include <cctype>
 
int main()
{
    std::string special="()[]{}\"@#$%^&*/|\\ ;:'<>`~-+";
    std::ifstream ifs("text.txt");
    if (!ifs)
    {
        std::cerr<< "No file\n";
        return 1;
    }
    int nChars = 0, nPunct = 0, nSpecial = 0;
 
    char c;
    while (!ifs.eof() && ifs>> c)
    {
        if      (isalpha (c)) nChars ++;
        else if (ispunct (c)) nPunct ++;
        if (special.find (c) != std::string::npos) nSpecial ++;
    }
    std::cout<< "Characters: "       << nChars  << std::endl
             << "Punctuation marks: "<< nPunct  << std::endl
             << "Special marks: "    << nSpecial<< std::endl;
    return 0;
}
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
27.11.2012, 03:44
Привет! Вот еще темы с ответами:

Подсчет количества символов русского алфавита в текстовом файле - C++
Здравствуйте, нужна ваша помощь) Допустим у нас имеется текстовой файл Test.txt( в нем находятся русские буквы и другие... символы и...

Сделать подсчет частоты встречаемости последовательности символов АБВ в текстовом файле - C++
Народ помогите пожалуйста решить задачу: подсчет частоты встречаемости последовательности символов АБВ в текстовом файле?

Подсчет символов UTF-8. Считывание пробельных символов - C++
Написал программу считывания файла с кодировкой UTF-8. Но она не считывает пробельные символы. Программа получает на вход файл из...

Подсчет строчек в файле - C++
Здравствуйте, Подскажите, пожалуйста, как подсчитать кол-во строк в текстовом файле и вывести каждую строку поочередно на экран?


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

Или воспользуйтесь поиском по форуму:
8
Yandex
Объявления
27.11.2012, 03:44
Ответ Создать тему
Опции темы

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