Блог IT для Windows

Всё для Windows, софт, исходники

Программа "Шифрование кодом Цезаря" на С++

E-mail Печать PDF
(6 голоса, среднее 3.00 из 5)

Разрабатываемая программа была написана в среде Borland C++ 3.1. Данная программа  шифрует и дешифрует введённый текст шифром Цезаря. Он представляет простую подстановку, в которой каждый символ сообщения сдвигается вперёд на фиксированное число мест (Ключ). Шагом ключа в данной программе будет диапазон от  0 до 10.

Листинг программы:

/*Программа шифрования кодом Цезаря*/
#include <stdio.h>//необходимо для printf
#include <conio.h>//необходимо для getch
#include <string.h>//необходимо для puts
int main()
{
/*инициализируем переменные*/
int i=0, n=0, k;
int d;
char alf[] = "abcedfghijklmnopqrstuvwxyz0123456789#!@$%^&*-+=";//словарь
char buf[10];//массив для ввода сообщения
char decod[10];//массив для ввода сообщения
/*вывод названия программы*/
printf("\nBorland C++ 3.1");
printf("\nProgramma shifrovanija kodom Tsezarja\n");
/*Процедура шифрования ввод*/
printf("\n***Shifrovanie***");
printf("\nVvedite slovo ili tsifrj :");
scanf("%s",&buf);//ввод слова или цифр
printf("\nVvedite tzifrovoj cluch, (shag ot 1 do 10):  ");
scanf("%i",&k);//вводим ключ
for (n=0; n < 10; n++)
{
for (i = 0; i < 47; i++)
{
if (buf[n] == alf[i])
{
if (i >= 47)
buf[n] = alf[i-47];
else
buf[n] = alf[i+k];//сдвигаем вправо на показания шага ключа
break;//принудительно выходим из цикла
}
}
}
printf("\nVash shefr= %s\n", buf);//выводим полученный шифр
/*Процедура дешифрования ввод*/
printf("\n--Deshifrovanie---\n");
printf("\nVvedite vash shifr : ");
scanf("%s",&decod);//вводим шифр
printf("\nVvedite tzifrovoj cluch, (shag ot 1 do 10): ");
scanf("%i",&d);//вводим ключ
for (n=0; n < 10; n++)
{
for (i = 0; i < 47; i++)
{
if (decod[n] == alf[i])
{
if (i >= 47)
decod[n] = alf[i-47];
else
decod[n] = alf[i-d];//сдвигаем влево на показания шага ключа
break;//принудительно выходим из цикла
}
}
}
printf("\nShefr= ");
puts (decod);//выводим код
getch();//задержка программы
return 0;
}//конец
 

Комментарии  

 
+4 #1 Сергей 14.02.2016 11:50
Отличное решение, код помог при решении лабораторной работы.
:-)
Цитировать | Сообщить модератору
 

Добавить комментарий


Защитный код
Обновить

Праздники и история IT

Кто на сайте

Сейчас 25 гостей онлайн

Экспорт RSS

feed-image RSS

Статистика

Яндекс.Метрика
Анализ веб сайтов

Поиск


Голосования

Какой операционной системой вы пользуетесь
 

Наш опрос

Каким браузером вы пользуетесь
 
Каким антивирусом вы пользуетесь