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

Исправить ошибки в коде программы шифрования и дешифрования сообщений

31.10.2016, 01:16. Просмотров 288. Ответов 0
Метки нет (Все метки)

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

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
55
56
57
58
59
#include <iostream>
#include <math.h>
#include <iomanip>
#include <string.h>
#include <stdio.h>
#include <cstdlib>
 
using std::cout;
using std::cin;
using std::endl;
const int string_size=80;
 
int main(){
int i = 0;
char string[string_size];
char newstring[string_size];
cout << "1 - encrypt" << endl;
cout << "2 - decrypt" << endl;
cout << "3 - exit" << endl;
cin >> i;
 std::cout<<"Enter string: ";
    std::cin.getline(string,string_size-1);
while(i > 0 && i < 4){
switch(i){
case 1:
   
    char *ptr=string+1,*newptr=newstring;
    while(*newptr++=*ptr,ptr+=2,ptr<string+strlen(string));
    ptr=ptr==string+strlen(string) ? ptr-1 : ptr-3;
    while(*newptr++=*ptr,ptr-=2,ptr>=string);
    *newptr='\0';
    std::cout<<"New string: "<<newstring<<std::endl;
    
break;
case 2:
   char string[string_size];
    char newstring[string_size];
    std::cout<<"Enter string: ";
    std::cin.getline(string,string_size-1);
    char *ptr=string+1,*newptr=newstring;
    while(*newptr++=*ptr,ptr+=2,ptr<string+strlen(string));
    ptr=ptr==string+strlen(string) ? ptr-1 : ptr-3;
    while(*newptr++=*ptr,ptr-=2,ptr>=string);
    *newptr='\0';
    std::cout<<"New string: "<<newstring<<std::endl;
    
break;
case 3:
   cout << "exit" << endl;
break;
}
cout << "1 - encrypt" << endl;
cout << "2 - decrypt" << endl;
cout << "3 - exit" << endl;
cin >> i;
}
 
return 0;
}
0
QA
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
31.10.2016, 01:16
Ответы с готовыми решениями:

Исправить ошибки в коде программы
#include&lt;iostream&gt; using namespace std; int main() { setlocale(LC_ALL, &quot;russian&quot;) double...

Исправить ошибки в коде программы
#include &quot;stdafx.h&quot; #include &lt;iostream&gt; #include &lt;complex&gt; using namespace std; int...

Неожиданное поведение программы: лишний виток цикла (найти и исправить ошибки в коде)
#include &lt;iostream&gt; using namespace std; int main() { int c =0; int ma; cout &lt;&lt;...

Найти ошибки в коде и исправить эти ошибки (Наследование)
Вот в общем 3 файла, изучаю наследование на примере односвязного и двусвязного списков: list.h...

Найти ошибки в коде и исправить эти ошибки
Есть у меня вот такой код: #include &lt;iostream&gt; using namespace std; class A{ private:...

0
Answers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
31.10.2016, 01:16

Найти ошибки в коде и исправить эти ошибки - C++
Судя по вываливающейся ошибки, идет двойное освобождение памяти. У самого не получается отловить...

Программа шифрования\дешифрования
Уважаемые программисты! Хочу попросить у Вас помощи в написании 2-х программ... Я ещё не очень...

Программа шифрования и дешифрования
Программа должна обеспечивать: • шифрование информации, находящейся в текстовом файле, с записью...


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

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

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