Алгоритм шифрования данных

Задача: 

Допустим, требуется зашифровать сообщения, состоящие из определенных символов. Например, исходный текст состоит из цифры от 0 до 9 (представленных в программе в виде символов) и других знаков и имеет длину в 15 символов. В шифровке на место цифр подставляются соответствующие им знаки, на место всех остальных символов дополнительный 11-й знак.

Описание переменных: 

В программе имеется 4 массива. Два – в разделе констант, и два – в разделе описания переменных. Первые служат для хранения соответствия цифр символам кодирования, вторые – для хранения данных, введенных пользователем, и результата их шифрования.

Алгоритм решения задачи: 

Сначала данные записываются в массив mytext. Затем требуется просмотреть каждый элемент массива и найти ему соответствие в массиве atext. Когда обнаруживается соответствие, цикл while останавливается и в mycode записывается соответствующий символ-код из массива acode. Если символ не описан в массиве atext, то он заменяется последним элементом массива acode.

Программа на языке Паскаль: 

const
    n = 15;
    atext: array[1..10] of char = ('0','1','2','3','4','5','6','7','8','9');
    acode: array[1..11] of char = ('&','+','/','.','^','@','"','!','%','#','$');
var
    mytext: array[1..n] of char;
    mycode: array[1..n] of char;
    i, j: integer;
 
begin
    writeln('Введите данные: ');
    for i := 1 to n do
        read(mytext[i]);
 
    for i := 1 to n do begin
        j := 1;
        while (j <= 10) and (mytext[i] <> atext[j]) do
            j := j + 1;
        if j <= 10 then
            mycode[i] := acode[j]
        else
            mycode[i] := acode[11];
    end;
 
    write('Результат: ');
    for i := 1 to n do
        write(mycode[i]);
 
readln;
end.

Комментарии

А как раскодировать?

А как раскодировать можно дополнить код

Шифрование

Текст шифруется следующим способом: каждое предложение разбивается на группы по три слова. Недостающие слова заменяются «*». Меняется местами первое слово в группе с третьим, второе остается на месте. Написать программу, шифрующую сообщение данным методом.

А если я хочу не 15 символов

А если я хочу не 15 символов написать, а произвольно? Может быть мне сегодня надо зашифровать сообщение в 13 символов, а завтра надо будет в 678. не составлять же для каждого отдельного числа программу

Константа

Вообще-то, как раз именно для такого случая и вводят в самом начале константу (в разделе объявления констант). В нашем случае это строка:
const
n=15;
- вместо числа "15" подставляешь то, которое тебе нужно (13 или 678).