
Вопрос задан 01.04.2018 в 11:22.
Предмет Информатика.
Спрашивает Шишлова Олеся.
Вот шифр цезаря на паскале но в чем заключаеться вопрос , в том что если в слове есть буква близкая
к концу алфавита например я то прибавляя ключ(например 3) он не может перескочить к началу алфавита! помогите пожалуйста!program z1;uses crt;var a,b,c:string;i,j,k,d,g:integer;beginclrscr;writeln('Шифрование?1-да,0-нет');readln(g);writeln('Исходный текст ');readln(a);writeln('ключ');readln(d);c:='';b:='абвгдеёжзийклмнопрстуфхцчшщъыьэюя';for i:=1 to length(a) dofor j:=1 to length(b) dobeginIf g=0 then k:=(j-d) mod 32 else k:=(j+d);if a[i]=b[j] then c:=c+b[k];end;writeln(c);readkey;end.

Ответы на вопрос

Отвечает Зайцева Ксения.
Кажется так.
необходи из алфавита вычесть общее количество знаков алфавита.
program z1;
var a,b,c:string;
i,j,k,d,g:integer;
begin
writeln('Шифрование?1-да,0-нет');
readln(g);
writeln('Исходный текст ');
readln(a);
writeln('ключ');
readln(d);
c:='';
b:='абвгдеёжзийклмнопрстуфхцчшщъыьэюя';
for i:=1 to length(a) do
for j:=1 to length(b) do
begin
If g=0 then k:=(j-d) mod 32 else k:=(j+d);
if k > 33 then k:=k-33;
if a[i]=b[j] then c:=c+b[k];
end;
writeln(c);
end.


Топ вопросов за вчера в категории Информатика
Последние заданные вопросы в категории Информатика
Предметы
-
Математика
-
Литература
-
Алгебра
-
Русский язык
-
Геометрия
-
Английский язык
-
Химия
-
Физика
-
Биология
-
Другие предметы
-
История
-
Обществознание
-
Окружающий мир
-
География
-
Українська мова
-
Информатика
-
Українська література
-
Қазақ тiлi
-
Экономика
-
Музыка
-
Право
-
Беларуская мова
-
Французский язык
-
Немецкий язык
-
МХК
-
ОБЖ
-
Психология
-
Физкультура и спорт
-
Астрономия
-
Кыргыз тили
-
Оʻzbek tili