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

Шифр цезаря с ключевым словом.[С++] - C++

Восстановить пароль Регистрация
 
Рейтинг: Рейтинг темы: голосов - 25, средняя оценка - 4.96
insame
0 / 0 / 0
Регистрация: 19.11.2009
Сообщений: 5
12.12.2012, 20:34     Шифр цезаря с ключевым словом.[С++] #1
Я написал программу по "Шифру цезаря".

Суть задания я перепутал. Оказывается мне надо было написать "Шифр цезаря с ключевым словом".

Код программы "Шифра цезаря"(без ключа) есть, а дописать не получается. Смысл понимаю, а как реализовать в программе не понимаю. Пишу на Microsoft Visual Studio 2012.

Сроки сдачи поджимают. Надеюсь на вашу помощь.
Заранее спасибо.

Вот программный код:
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
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
#include<iostream>
#include <math.h>
using namespace std;
void main()
{
 
    char alf [29] = {'*','a','b','c','d','e','f','g','h','i','j','k','l','m','n','o','p','q','r','s','t','u','v','w','x','y','z','_','+'};
    char alf2 [29]; 
    bool check = true;
    int pos,i = 0;
    int a = 0,b = 0;
    int j;
    char *message = new char[];
    char ch;
 
 
 
 
    cout<<"Alfavit shifra cezarya\n";
    for ( i = 0; i<29 ; i++)
        cout<<alf[i]<<" ";
 
 
    //Vvod
 
    cout<<"\n\nVvedite soobshenie:"<<endl;
    cin>>message;
 
 
    
        cout<<"Enter a 1<=a<=28: "<<endl;
        cin>>a;
        
    
 
 
    //for ( i = 0; i<29 ; i++)
    //  alf2[i]=alf[(a*(i)+b)%29];
 
    //shefrovanie 
    i = 0;
    while(message[i] != '\0')
    {   
        // ishem v alfavite
        for( int k = 0; k < 29; k++)
            if (message[i]==alf[k])
            {
                pos = k;
                break;
            }
 
            
        j = (pos + a) % 29;
        message[i] = alf[j];
 
        i++;
        
    }
 
    
    cout<<"\n\n";
 
    cout<<"soobshenie shifro: "<<message<<endl;
 
    cout<<"Enter a 1<=a<=28: "<<endl;
        cin>>a;
 
i =0;
    while(message[i] != '\0')
    {   
        for( int k = 0; k < 29; k++)
        {
            if (message[i]==alf[k])
            {
                pos = k;
                break;
            }
 
        }
 
        if((pos - a) < 0)
        {
            j = (29 + (pos - a)) % 29;
        }
        else
            j = (pos - a) % 29;
        
        message[i] = alf[j];
 
        i++;
        
    }
 
    cout<<"deshifracia message: "<<message<<endl;
    system("PAUSE");
}
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
12.12.2012, 20:34     Шифр цезаря с ключевым словом.[С++]
Посмотрите здесь:

Шифр Цезаря C++
C++ Шифр Цезаря
Шифр Цезаря C++
C++ Перестановочный шифр с ключевым словом
C++ Шифр Цезаря
C++ Как зашифровать текст из файла шифрованием Цезаря с ключевым словом?
Шифр цезаря C++
C++ Шифр Цезаря C++

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Ответ Создать тему
Опции темы

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