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

Шифрование методом перестановки на C++ - C++

Восстановить пароль Регистрация
 
Рейтинг: Рейтинг темы: голосов - 14, средняя оценка - 4.71
Inn@
0 / 0 / 0
Регистрация: 17.03.2014
Сообщений: 6
19.05.2014, 23:21     Шифрование методом перестановки на C++ #1
Дана строка. Зашифровать ее следующим методом: строка вписывается в таблицу размера NхM по строкам, а результат считывается по столбцам
помогите разобраться что не так( Написала код(скрин к программе) но почему то не шифрует(
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
#include<stdio.h>
#include<conio.h>
#include <string.h>
#include <locale.h>
#include <math.h>
 
int j, k, r, q, i;
float m, n; 
char s[] = {"Какой-то текст.."}, buf[16];
void Mymain(char *s)
{
    n = strlen(s);//длинна строки
    m = sqrt(n);//длинна ширины массива
    q =i*m;
    //считываем  символы и записываем их в матрицу
    for (i = 0; i < m; i++)
        for (j = 0; j < m; j++)
        {
            buf[q + j] = s[k];
            k++;
        }
    //шифруем
    for (i = 0; i < m; i++)
        for (j = 0; j < m; j++)
        {
            s[k] = buf[q + i];
            k++;
        }
    for (i = 0; i < m; i++)
    {
        for (j = 0; j < m; j++)
        {
            printf("%c", s[k] = buf[q + i]);
        }
    }
}
int main()
{
    setlocale(LC_CTYPE, "rus");
    printf("%s\n", s);
    Mymain(s);
    _getch();
}
[]https://pp.vk.me/c620725/v620725984/5ad4/Dl7BKIuVzpE.jpg[/]
Изображения
 
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
19.05.2014, 23:21     Шифрование методом перестановки на C++
Посмотрите здесь:

Нужна помощь (Шифрование с симметричными ключами методами перестановки) C++
Шифрование методом перестановки символов в заданном порядке C++
C++ Шифрование методом перестановки
Шифрование/дешифрование файлов методом перестановки C++
C++ Шифрование методом простой перестановки
Шифрование / дешифрование (метод перестановки символов) C++
C++ Шифрование методом перестановки с заданным ключом текста любой длины
C++ Зашифровать текст методом простой одинарной перестановки

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
rikimaru2013
C++ Game Dev
 Аватар для rikimaru2013
2139 / 972 / 223
Регистрация: 30.11.2013
Сообщений: 3,241
19.05.2014, 23:52     Шифрование методом перестановки на C++ #2
Добрый вечер,

C++
1
2
n = strlen(s);//длинна строки
    m = sqrt(n);//длинна ширины массива
Длинна 27. Под корнем 5,19615 в int запишется 5. Итого 25 ячеек для 27 + '\0'. Косяк.

C++
1
2
int j, k, r, q, i;
q =i*m;
В переменной i мусор типа -12445345345, а вы умножаете это еще на что-то ))))

C++
1
_getch();
Это system("pause") ? xD
uhx
 Аватар для uhx
56 / 56 / 6
Регистрация: 11.07.2013
Сообщений: 300
20.05.2014, 00:37     Шифрование методом перестановки на C++ #3
Цитата Сообщение от rikimaru2013 Посмотреть сообщение
Это system("pause") ? xD
Именно.
А вообще, чтобы избегать пауз через getch() можно писать system("pause > nul"); И никаких надписей в консоли, и никаких лог-файлов в папке с прогой.
Yandex
Объявления
20.05.2014, 00:37     Шифрование методом перестановки на C++
Ответ Создать тему
Опции темы

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