Вопрос задан 26.02.2019 в 14:29. Предмет Информатика. Спрашивает Чернова Галина.

Смоделировать шифр Цезаря: пусть пользователь вводит 3-х буквенные слова.Программа должна выводить

зашифрованные слова с сдвигом Цезаря, решить в паскаль. Помогите пожалуйста,очень срочно!Заранее благодарю.
0 0
Перейти к ответам

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

Внимание! Ответы на вопросы дают живые люди. Они могут содержать ошибочную информацию, заблуждения, а также ответы могут быть сгенерированы нейросетями. Будьте внимательны. Если вы уверены, что ответ неверный, нажмите кнопку "Пожаловаться" под ответом.
Отвечает Рубчинская Аполлинария.
Для строчных русских букв: 

var s:string;
k,i,c:integer; 
begin   
writeln('Введите 3-x буквенное слово:');   
readln(s);   
write('Введите ключ: ');   
readln(k);   
for i:=1 to length(s) do   
begin     
c:=ord(s[i])+k;   
if c>1103 then c:=c-32;     
s[i]:=chr(c);     
write(s[i]);   
end;  
end.
0 0
Отвечает нейросеть ChatGpt. Будьте внимательны, ответы нейросети могут содержать ошибочные или выдуманные данные.

Конечно, я могу помочь вам написать программу на языке Pascal для шифра Цезаря. Вот пример программы:

```pascal program CaesarCipher;

var originalWord, encryptedWord: string; shift: integer;

function EncryptCesar(input: char; shift: integer): char; var encryptedChar: char; begin if (input >= 'A') and (input <= 'Z') then encryptedChar := Chr((Ord(input) - Ord('A') + shift) mod 26 + Ord('A')) else if (input >= 'a') and (input <= 'z') then encryptedChar := Chr((Ord(input) - Ord('a') + shift) mod 26 + Ord('a')) else encryptedChar := input;

EncryptCesar := encryptedChar; end;

procedure CaesarCipher(inputWord: string; shift: integer; var outputWord: string); var i: integer; begin outputWord := ''; for i := 1 to Length(inputWord) do outputWord := outputWord + EncryptCesar(inputWord[i], shift); end;

begin // Ввод слова и сдвига write('Введите трехбуквенное слово: '); readln(originalWord);

if Length(originalWord) <> 3 then begin writeln('Ошибка: Введите ровно трехбуквенное слово.'); readln; exit; end;

write('Введите сдвиг: '); readln(shift);

// Шифрование и вывод результата CaesarCipher(originalWord, shift, encryptedWord);

writeln('Зашифрованное слово: ', encryptedWord); readln; end. ```

Эта программа запрашивает у пользователя трехбуквенное слово и сдвиг, а затем выводит зашифрованное слово с использованием шифра Цезаря. Обратите внимание, что программа рассматривает только буквы английского алфавита, а все остальные символы остаются без изменений.

0 0

Топ вопросов за вчера в категории Информатика

Последние заданные вопросы в категории Информатика

Задать вопрос