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

Шифрация битов - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Выход на биты в поразрядных операторах http://www.cyberforum.ru/cpp-beginners/thread633033.html
Здравствуйте. Обьясните пожалуйста есть код: #include <iostream.h> #include <conio.h> #pragma argsused void Bits(unsigned); int main() {unsigned x;
C++ Предоставить пользователю возможность выбрать цвет фона и текста в консоле Помогите пожалуйста написать программу, которая бы предоставляла пользователю возможность выбрать цвет фона и текста консоли, с помощью операторов: switch и system ("color"). http://www.cyberforum.ru/cpp-beginners/thread632980.html
C++ Построение сети в теории, на основе сокетов
Построение сетей на основе soket api - протокол только TCP\IP Раскажите в теории как основано это, кодов не надо так токово, просто какие и в каком порядке функции вызываються наприемр.
C++ Templates (composition). exception handling run-time error
Код компилируется. Если делать циклы для push and pop размера такого чтоб не превышало размеры Стока то все работает нормально если циклы больше размера стока то выходит вот такая картинка в...
C++ Создание окон http://www.cyberforum.ru/cpp-beginners/thread632939.html
Пожалуйста подскажите, как создавать и работать с окнами.
C++ Подскажите где ошибка, или может есть другой вариант реализации кода // Упорядочить статический массив(заполненый случайными числами), чтобы в нём чередовались чётные и нечётные элементы, разницу записываем в конец массива. // Функции не использовать. const int... подробнее

Показать сообщение отдельно
KostyaKulakov
Заблокирован
05.08.2012, 10:26  [ТС]
ребят это всё хорошо. но можно же декрементировать вот эту функцию и в ней сделать шифрацию или нет?
C++
1
2
3
4
5
6
7
8
9
10
11
void ss(unsigned int x)
{
    for (int i = sizeof(unsigned int)*8 - 1; i >= 0; i--)
    {
        unsigned int mask = (1 << i);
        if (x & mask)
            cout << '1';
        else
            cout << '0';
    }
}
мне вот такая нужна функция только чтобы она шифровала

Добавлено через 36 минут
переписал получилось вот так
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
void scramble(unsigned value)
{
  unsigned value = 0;
 
  for (unsigned mask_o = 1, mask_s = 2;
                mask_o != 0;
                mask_o <<= 2, mask_s <<= 2)
  {
    value |= ((value & mask_o) << 1) | ((value & mask_s) >> 1);
  }
      for (int i = 31; i >= 0; --i)
      {
          unsigned int mask = (1 << i);
            if (value & mask) 
                cout << '1';
                else
                cout << '0';
      }
}
Добавлено через 1 час 27 минут
всё сделал. вот такой код получился
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
#include <iostream>
using namespace std;
 
void scramble(unsigned x)
{
  unsigned value = 0;
 
  for (unsigned mask_o = 1, mask_s = 2;
                mask_o != 0;
                mask_o <<= 2, mask_s <<= 2)
  {
    value |= ((x & mask_o) << 1) | ((x & mask_s) >> 1);
  }
      for (int i = 31; i >= 0; --i)
      {
          unsigned int mask = (1 << i);
            if (value & mask) 
                cout << '1';
                else
                cout << '0';
      }
}
 
void printAsBinary(unsigned value)
{
  for (int i = 31; i >= 0; --i)
  {
      unsigned int mask = (1 << i);
        if (value & mask) 
            cout << '1';
            else
            cout << '0';
  }
}
 
int main()
{
  unsigned a = 0;
  cout << "Enter the number of: ";
  cin >> a;
cout << endl << "number of bits: " << endl;
  printAsBinary(a);
  cout << endl << "number of bits in the encrypted: " << endl;
 
  scramble(a);
 
  cout << endl << endl;
  return 0;
}
0
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru