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

Статистика встречаемости символов в файле - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Смещение элементов одномерного массива http://www.cyberforum.ru/cpp-beginners/thread63331.html
Осуществить сжатие массива А(30), удалив из него все положительные элементы.
C++ Структуры,работа с файлом ув программисты,вот меня заинтересовала работата со структурами,пожалуйста,приведите мне пример проги.Можно так: существует файл в нем записи типа: адресс: номер: зарплата: надо ввести на экран,и вывести в файл данные помогите буду рад ответам http://www.cyberforum.ru/cpp-beginners/thread63005.html
нужно написать программу! C++
программу нужно на с++ В файле заданы координаты концов отрезков. Вывести их на экран. Отдельным цветом выделить три пары отрезков, которые пересекаются и имеют наибольшую суммарную длину. Формат записи данных в файле: Vidrizok1: x1=22; y1=130; x2=340; y2=14; Vidrizok2: x1=45; y1=39; x2=17; y2=200.
C++ Исправьте ошибки!
Перемножение двух матриц. Мой код:#include <stdio.h> #include <conio.h> #include <math.h> #include <stdlib.h> void proizv (int **mas1,int **mas2,int x1,int y1,int y2) { int **mas3; int i,j,k;
C++ MainThread http://www.cyberforum.ru/cpp-beginners/thread62835.html
Обьясните дураку пытаюсь втыкнуть каким макаром строчка MainThread; заменяет весь WinMain?
C++ Как работать с битами? Подскажите, пожалуйста... please... У меня дано число типа WORD. Как мне просмотреть первый и последующие биты в этом числе? И если возможность их изменения? Намного благодарен! подробнее

Показать сообщение отдельно
ptichka
 Аватар для ptichka
0 / 0 / 0
Регистрация: 19.12.2009
Сообщений: 15
21.12.2009, 17:10     Статистика встречаемости символов в файле
Цитата Сообщение от Rififi Посмотреть сообщение
Вот моя реализация на С, исходный текст и результат работы приложил в text.txt
Мракуха какая-то. в неё врубаться надо только пол-часа. как минимум

вот вариант на C++

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 <map>
#include <algorithm>
#include <iterator>
#include <fstream>
#include <iostream>
#include <locale>
#include <boost/lambda/lambda.hpp>
 
using namespace boost::lambda;
 
int main()
{
    setlocale(LC_ALL, "");
 
    std::ifstream ifs("input.txt");
    ifs.unsetf(std::ios_base::skipws);
 
    typedef std::map<char, unsigned> M;
    M m;
    typedef std::istream_iterator<char> I;
    std::for_each(I(ifs), I(), ++var(m)[_1]);
 
    for (M::const_iterator it=m.begin(), end=m.end(); it != end; ++it)
    {
        std::cout
            << "Символ " << it->first <<
            " встретился " << it->second << " раз." << std::endl;
    }
 
    return (0);
}
для файла input.txt, состоящего из:


вывод такой:


(первая строка печатает символ "перевод каретки" \n)

подсчитать вероятность встречаемости каждого из них, т.е. разделить количество встречаемости конкретного символа на общее количество символов.

Хорошего понемножку. а это сам делай.
может кто нибуть закоментировать этот код? на моём си билдере не в какую не хочет работать!
-----------------------------------------------------------------
вот это например что? =)
#include <boost/lambda/lambda.hpp>

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