Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
0 / 0 / 0
Регистрация: 19.12.2019
Сообщений: 7
1

C++ Замена значений

26.05.2020, 21:33. Показов 402. Ответов 0
Метки c++ (Все метки)

Author24 — интернет-сервис помощи студентам
Изначально имеется файл 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
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
void encode(string output_name)
    {
        vector<pair<char, size_t>> arr;
        vector<size_t> freq(128, 0);
        for (const auto& i : str)
            ++freq[i];
        for (size_t i = 0; i != freq.size(); i++)
        {
            if (freq[i] > 0)
            {
                arr.push_back(make_pair(char(i), freq[i]));
            }
        }
 
        sort(arr.begin(), arr.end(),
            [](const auto& a, const auto& b)
        {
            return a.second > b.second;
        });
 
        ofstream fout;
        fout.open("alf.txt");
        string bits = "";
        map <char, string>dict;
        for (size_t i = 0; i < arr.size(); i++)
        {
            string temp = "";
            int j = log2(i + 1);
            for (int x = 0; x < j; x++)
            {
                temp += '0';
            }
            bitset<8> bs(i + 1);
            string t = bs.to_string();
            t = t.substr(t.find("1"));
            temp += t;
            cout << arr[i].first << '\t' << i + 1 << '\t' << temp << endl;
            dict[arr[i].first] = temp;
            fout << arr[i].first;
        }
        bit_str = "";
        for (const auto& i : str)
        {
            bits += dict[i];
            bit_str += dict[i];
        }
        cout << bits << endl;
        for (const auto& i : dict)
            cout << i.first << '\t' << i.second << endl;
    }
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
26.05.2020, 21:33
Ответы с готовыми решениями:

Замена значений массива
Добрый день. Начал изучать программирование на языке с/с++. Подскажите как быть? Нужно поменять...

Замена значений в документе
Приветствую посетителей форума! Нужна помощь с одной задачей. Есть документ следующего...

Замена значений двумерного массива
Заменить все значения двумерного массива в динамической памяти на значения, которые больше...

Замена отрицательных значений в файле нулями
Написал код, для замены отрицательных значений в файле нулями...не могу понять где ошибки,...

0
26.05.2020, 21:33
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
26.05.2020, 21:33
Помогаю со студенческими работами здесь

Замена значений массива на строчный элемент
Здрасте, сделал масив 200 на 200 со случайными цифрами в диапазоне от 0 до 2(0 1 2) Теперь надо 0...

Замена значений в текстовом файле с использованием fstream
Всем привет! Есть некий .txt файл. Структура его проста Наименование: (число) Наименование2:...

Замена значений после минимального нулями в двумерном массиве в каждом столбце
Всем привет не могу понять, как заменить элементы нулями после минимального значения. Заранее...

Замена букв в предложении. Не работает замена кириллицы
Суть программы заменить все определенные буквы в предложении на другую. Собственно, вот код....

Замена значений в QTableView
Подскажите, как в QTableView изменять значение ячеек? Если какой-то элемент в колонке равен...

Замена значений и инкремент этих значений
Есть n-oe количество строк формата TIME = 140208/0900 нужно инкриментировать значение стоящее после...


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

Или воспользуйтесь поиском по форуму:
1
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru