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

Метод гаммирования с обратной связью - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Enum http://www.cyberforum.ru/cpp-beginners/thread739778.html
Доброго времени суток Интересует что значит следующий код: enum Colors { RED, GREEN, BLUE };
C++ цикл пост условие # include <iostream.h> # include <stdio.h> # include <conio.h> # include <math.h> void main() {int d=0,r=0,u=0,g=0,s0,s1,sum; cout <<"Rebus \n"; do { http://www.cyberforum.ru/cpp-beginners/thread739775.html
Не могу определить назначение функции и то что она делает C++
#include <iostream.h> #include <conio.h> #include <stdio.h> struct llist{ int val; llist *next,*prev; }; void vstavkov(llist **z, int n){
Составить программу для сложения дробей C++
Даны две дроби А/В и С/Д (А,В,С,Д - натуральные числа). Составить программу для сложения этих дробей. Результат должен быть несократимой дробью.
C++ Вывести на экран таблицу значений функции http://www.cyberforum.ru/cpp-beginners/thread739737.html
всем привет. помогите пж разобраться с задачей. объясните пж к чему здесь (a и b) и как значения К подставлять (я так понимаю оно идет от 1 до бесконечности).
C++ Проблемы с кодом. Ругается на strcpy. Хелпните Программа по удалению последнего столбца из матрицы. #include <iostream> #include <string> #include <windows.h> using namespace std; void Print(char***matr,int str,int stb) //Печать матрицы подробнее

Показать сообщение отдельно
yaro78
0 / 0 / 0
Регистрация: 19.11.2015
Сообщений: 1
04.01.2016, 23:06     Метод гаммирования с обратной связью
В листинг, приведенной выше программной реализации гаммирования с обратной связью, следовало добавить сложение по модулю два.
Вот, теперь работает по-настоящему в Visual Studio 2010

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
#include "stdafx.h"
 
#include <iostream>
 
using namespace std;
 
const int FIRST_SYMBOL = ' '; // первый символ
const int SYMBOL_NUMBER = 95; // для простоты кодируем только английский алфавит 
 
void GammaCoding( char *input, char *gamma, char *result )
{
  for( char *i=input, *j=gamma; *i; i++, j++ )
  {
    if(!(*j)) j=gamma;
    int Ti = *i - FIRST_SYMBOL;
    int Gi = *j - FIRST_SYMBOL;
    *(result++) = FIRST_SYMBOL+(Ti+Gi)%SYMBOL_NUMBER;
  }
  *result = '\0';
}
 
void GammaDecoding( char *input, char *gamma, char *result )
{
  for( char *i=input, *j=gamma; *i; i++, j++ )
  {
    if(!(*j)) j=gamma;
    int Ci = *i - FIRST_SYMBOL;
    int Gi = *j - FIRST_SYMBOL;
    *(result++) = FIRST_SYMBOL+(Ci-Gi+SYMBOL_NUMBER)%SYMBOL_NUMBER;
  }
  *result = '\0';
}
 
int main()
{
    setlocale(LC_ALL, "rus");
    char str1[256], gamma[256], rez[256];
 
    cout << "Введите исходное сообщение: ";
    cin >> str1;
    cout << "Введите гамму: ";
    cin >> gamma;
 
    GammaCoding( str1, gamma, rez );
    cout << "Зашифрованное сообщение: ";
    cout << rez << endl;
  
    cout << "Введите зашифрованное сообщение: ";
    cin >> rez;
 
    GammaDecoding( rez, gamma, str1 );
    cout << "Исходное сообщение: ";
    cout << str1 << endl;
 
    system("pause");
    return 0;
}
 
Текущее время: 08:16. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru