Форум программистов, компьютерный форум, киберфорум
Наши страницы
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.90/10: Рейтинг темы: голосов - 10, средняя оценка - 4.90
натуська
0 / 0 / 0
Регистрация: 22.10.2011
Сообщений: 10
1

Символы и строки. Кодировка символов

22.10.2011, 13:10. Просмотров 1990. Ответов 19
Метки нет (Все метки)

Написать функции, которые шифруют-дешифруют текст помещенный в файле, имя которого задается в качестве параметра, заменяя буквы цифрами в соответствии с содержащейся в файле таблицы кодировки (значения кодов произвольные) вида:

А...........010..........а...........503
Б...........100..........б...........215
В...........103..........в...........313

В главной программе обеспечить ввод имени исходного файла и имени файла с закодированным текстом, обеспечить кодировку и декодировку файла.
Вывести на экран исходный файл, закодированный и декодированный.
0
QA
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
22.10.2011, 13:10
Ответы с готовыми решениями:

Кодировка строки символов
Привет народ. Пытаюсь парсить ссылки, смотрю как youtube загрузчики работают, есть строка например:...

Функция перезаписывает символы строки заданным количеством символов другой строки
Программа работает. Но не совсем правильно. В конечной строке появляются непонятные символы,...

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

Удалить из символьной строки символы из заданного диапазона символов
Удалить из символьной строки символы из заданного диапазона символов. Без string, с помощью for.

Из произвольной строки символов удалить все повторно встречающиеся символы
Составить подпрограмму, которая из произвольной строки символов удаляет все повторно встречающиеся...

19
Thinker
Эксперт С++
4240 / 2214 / 203
Регистрация: 26.08.2011
Сообщений: 3,802
Записей в блоге: 5
22.10.2011, 14:43 2
Цитата Сообщение от натуська Посмотреть сообщение
Написать функции, которые шифруют-дешифруют... обеспечить кодировку и декодировку файла.

Не по теме:

Шифрование и кодирование - разные понятия, в вашем случае именно кодирование, пусть даже и немного странное)

0
натуська
0 / 0 / 0
Регистрация: 22.10.2011
Сообщений: 10
22.10.2011, 17:10  [ТС] 3
Это задание из учебника Эпштейна. Переписала один в один. Мальчики помогите с задачкой, завтра экзамен
0
Van111
213 / 192 / 23
Регистрация: 03.08.2011
Сообщений: 2,816
Записей в блоге: 12
22.10.2011, 17:17 4
вот ДВИЖОК
char s[10240];-там текст файла
for(int i=0;(int) s[i]!='\n';i++)
s=(int)s+25;
0
22.10.2011, 17:17
Ree.exe
22.10.2011, 18:30
  #5

Не по теме:

Цитата Сообщение от натуська Посмотреть сообщение
А...........010..........а...........503
Б...........100..........б...........215
В...........103..........в...........313
То есть вместо А-010 может быть и 215, 679 ил т. д и нет никакого общего алгоритма кодирование символов??

0
натуська
0 / 0 / 0
Регистрация: 22.10.2011
Сообщений: 10
22.10.2011, 18:33  [ТС] 6
Цитата Сообщение от Ree.exe Посмотреть сообщение

Не по теме:


То есть вместо А-010 может быть и 215, 679 ил т. д и нет никакого общего алгоритма кодирование символов??

да - значения кодов произвольные, описываются в отдельном текстовом файле.
0
Van111
213 / 192 / 23
Регистрация: 03.08.2011
Сообщений: 2,816
Записей в блоге: 12
22.10.2011, 18:42 7
натуська, и как вы потом собираетесь раскодировать текст?
0
натуська
0 / 0 / 0
Регистрация: 22.10.2011
Сообщений: 10
22.10.2011, 18:54  [ТС] 8
Цитата Сообщение от Van111 Посмотреть сообщение
натуська, и как вы потом собираетесь раскодировать текст?
Как я понимаю - значения кодов описанные в файле не меняются. Читаем файл, допустим, с набором символов АбВ и в новый файл записываем значения кодов, т.е. будет - 010215103.
0
Ree.exe
56 / 56 / 16
Регистрация: 01.08.2011
Сообщений: 141
22.10.2011, 18:54 9
Цитата Сообщение от Van111 Посмотреть сообщение
натуська, и как вы потом собираетесь раскодировать текст?
Если код однозначно читается, то все нормально расскодируется.
0
Thinker
Эксперт С++
4240 / 2214 / 203
Регистрация: 26.08.2011
Сообщений: 3,802
Записей в блоге: 5
22.10.2011, 18:57 10
Цитата Сообщение от натуська Посмотреть сообщение
Как я понимаю - значения кодов описанные в файле не меняются. Читаем файл, допустим, с набором символов АбВ и в новый файл записываем значения кодов, т.е. будет - 010215103.
Тогда это все же шифрование, а в файле хранится ключ для зашифрования/расшифрования. Данный шифр называется шифром простой замены, в котором используется биективное отображение.
0
silent_1991
23.10.2011, 17:11
  #11

Не по теме:

Цитата Сообщение от Van111 Посмотреть сообщение
вот ДВИЖОК
Как это гордо прозвучало... Вы не покраснели?

0
alkagolik
Заблокирован
23.10.2011, 17:17 12
Цитата Сообщение от натуська Посмотреть сообщение
Это задание из учебника Эпштейна
можно подробней ИО, год, издание
0
натуська
0 / 0 / 0
Регистрация: 22.10.2011
Сообщений: 10
23.10.2011, 17:20  [ТС] 13
Цитата Сообщение от alkagolik Посмотреть сообщение
можно подробней ИО, год, издание
М. С. Эпштейн - Практикум по программированию на языке С 2007.pdf
Отсканированно издание просто ужасно.
0
alkagolik
Заблокирован
23.10.2011, 17:33 14
упс, я уж было подумал что речь идет о работах Шеннона, Хеммнинга... а тут всего лишь. Что вам непонятно? в условии сказано
заменяя буквы цифрами в соответствии с содержащейся в файле таблицы кодировки
составляете таблицу кодировки (например ASCII) и работаете в соответствии с таблицей. Учтите тот факт, что в виндовс в конец каждой строки в файле добавляются символы "\r\n". Вам предлагается использовать трехзначные числа (это вжано потому что в байт не вмещается), поэтому следует считать из файла символьную строку и обрабатывать по три байта из нее чтобы получить код симовла. можно также инициативу проявить
0
натуська
0 / 0 / 0
Регистрация: 22.10.2011
Сообщений: 10
23.10.2011, 17:37  [ТС] 15
Не понятна реализация на С++. Лекций не было, спихнули на самообучение...
0
alkagolik
Заблокирован
23.10.2011, 17:42 16
натуська, вам никто еще не помог. скорее всего лишь потому что вы не даете файл с кодами (самая рутинная работа в этой программе). Сделайте эту задачу и поставьте в соответствие каждому коду сивол (включая знаки препинания) и дело пойдет быстрее.
1
натуська
0 / 0 / 0
Регистрация: 22.10.2011
Сообщений: 10
23.10.2011, 17:56  [ТС] 17
Таблица кодировки
0
Вложения
Тип файла: txt cod.txt (1.3 Кб, 37 просмотров)
Thinker
Эксперт С++
4240 / 2214 / 203
Регистрация: 26.08.2011
Сообщений: 3,802
Записей в блоге: 5
23.10.2011, 18:01 18
С генерацией файла кодировок нет проблем
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 <stdio.h>
#include <stdlib.h>
#include <time.h>
#include <conio.h>
#define N 256
 
void Perest(int *a, int n)
{
    int buf, i, k;
    for (i = 0; i < n; i++)
    {
        k = i + rand()%(n - i);
        buf = a[i]; a[i] = a[k]; a[k] = buf;
    }
}
 
int main( )
{
    int a[N], i;
    srand(time(NULL));
    for (i = 0; i < N; i++)
       a[i] = i;
    Perest(a, N);
    for (i = 0; i < N; i++)
       printf("%d %d\n", i, a[i]);
    getch();
    return 0;
}
Остается все это соответствие в файл записать и все.
1
Van111
213 / 192 / 23
Регистрация: 03.08.2011
Сообщений: 2,816
Записей в блоге: 12
23.10.2011, 18:24 19
Цитата Сообщение от silent_1991 Посмотреть сообщение
Как это гордо прозвучало... Вы не покраснели?
а чё заведно да это есть движок так как это код шифрование
0
silent_1991
23.10.2011, 21:49     Символы и строки. Кодировка символов
  #20

Не по теме:

Цитата Сообщение от Van111 Посмотреть сообщение
а чё заведно
А то! Все ногти уже сгрыз.

Цитата Сообщение от Van111 Посмотреть сообщение
да это есть движок так как это код шифрование
У вас проблемы с формальной логикой.

0
23.10.2011, 21:49
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
23.10.2011, 21:49
Привет! Вот еще темы с ответами:

Преобразовать символы табуляции и конца строки в escape последовательности символов
Напишите функцию escape(char s,char t), копирующую строку t в s и преобразующую символы типа новая...

С исходной строки символов удалить символы, отличные от русских букв и пробелов
С исходной строки символов удалить символы, отличные от русских букв и пробелов.

Сгенерировать строку S состоящую из случайных символов(букв). Упорядочить символы строки по алфавиту
Сгенерировать строку S состоящую из случайных символов(букв). Упорядочить символы строки по...


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

Или воспользуйтесь поиском по форуму:
20
Ответ Создать тему
Опции темы

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