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

Программа не правильно дешифрует

28.05.2015, 20:27. Просмотров 180. Ответов 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
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
#include<conio.h>
#include<stdio.h>
#include<locale.h>
#include<stdlib.h>
#include<iostream>
using namespace std;
int main()
{
    setlocale(LC_ALL, "russian");
    FILE *I, *O, *K, *D, *L;
    const int Max = 34;
    int k = 0, n = 0, m = 0;
    char in[Max], key[Max];
    I = fopen("", "r");
    O = fopen("", "w");
    K = fopen("", "r");
    D = fopen("", "w+");
    L = fopen("", "r");
    if (I == NULL || O == NULL || K == NULL || D == NULL)
    {
        exit(1);
    }
    while (!feof(I))
    {
        fscanf(I, "%c", &in[n]);
        n++;
    }
    printf("Вы ввели ключ %s\n", in);
    while (!feof(K))
    {
        fscanf(K, "%c", &key[m]);
        m++;
    }
    printf("Вы ввели ключ длинной %d символов\n", m);
    for (int i = 0; i<strlen(in); i++)
    {
        in[i] ^= key[i % strlen(key)];
    }
    fprintf(O, "%s", in);
    while (!feof(L))
    {
        fscanf(L, "%c", &in[n]);
        n++;
    }
    printf("Вы считали зашифрованное сообщение длинной %d символов\n", n);
    for (int i = 0; i<strlen(in); i++)
    {
        in[i] ^= key[i % strlen(key)];
        key[i % strlen(key)] = '\0';
    }
    fprintf(D, "%s", in);
    fcloseall();
    return 0;
}
Добавлено через 1 час 42 минуты
Проблема решена!
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
28.05.2015, 20:27
Ответы с готовыми решениями:

Мой алгоритм дешифрует не все
Здравствуйте, и опять я. Хотел с помощью XOR шифровать большие тексты (свыше 3к символов), но он...

Написать программу, которая шифрует и дешифрует файл алгоритмом с открытым ключом
шифруещая и дешифруещая программа на с++ с открытым ключом

Программа правильно сохраняет, но не правильно считывает матрицу из файла
Программа правильно сохраняет, но не правильно считывает матрицу из файла ... При считывание...

Программа работает не правильно
Задача:Найти среди 10 русских существительных отглагольные(типа хождение) и вывести их. ...

Не правильно прописана программа
не могу ввести строку. Могу ввести только количество слов, и сами слова, а надо еще ввести строку и...

1
SatanaXIII
Почетный модератор
Эксперт С++
5773 / 2773 / 377
Регистрация: 01.11.2011
Сообщений: 6,743
Завершенные тесты: 1
29.05.2015, 09:12 2
Цитата Сообщение от Tony_R Посмотреть сообщение
Проблема решена!
Правила хорошего тона говорят, что было бы неплохо оставить потомкам рецепт того, как именно была она решена.
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
29.05.2015, 09:12

Правильно ли написана программа?
#include &lt;tchar.h&gt; #include &lt;stdio.h&gt; #include &lt;iostream&gt; int _tmain(int argc, _TCHAR* argv)...

Не правильно работает программа
Написал программу но она чего то не правильно работает вот код: #include &lt;iostream&gt; #include...

Правильно ли написана программа
Проверьте, пожалуйста правильность написания данной программы и какой она всетаки дает результат в...


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

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

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