![]() |
1. Заголовок темы должен быть информативным. В противном случае тема удаляется ...
2. Все тексты программ должны помещаться в теги [code=pas] ... [/code].
3. Прежде чем задавать вопрос, см. "FAQ", если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно такую задачу уже решали!
4. Не предлагайте свои решения на других языках, кроме Паскаля (исключение - только с согласия модератора).
5. НЕ используйте форум для личного общения, все что не относится к обсуждению темы - на PM!
6. Одна тема - один вопрос (задача)
7. Проверяйте программы перед тем, как разместить их на форуме!!!
8. Спрашивайте и отвечайте четко и по существу!!!
![]() |
Angelok |
![]()
Сообщение
#1
|
Гость ![]() |
Помогите с задачкой! Я начала решать следующим способом: перевожу коды в 2-ую систему и применяю xor, но у меня получаются одинаковые новые коды. Пожет кто-нибудь решал похожую?
Вот задачка: Один из методов шифрации сообщения является метод шифрования наложением гаммы. Алгоритм шифрования: берётся некоторое случайное число в диапазоне от 127 до 255 – это гамма. Код каждого символа строки заменяют кодом, получившимся в результате операции: новый код = старый код XOR гамма. Зашифруйте и дешифруйте сообщения пользователя. |
![]() ![]() |
Angelok |
![]()
Сообщение
#2
|
Гость ![]() |
Вот что я сделала:
Код Uses crt; Var a,b,st,st1,a1,a2:string; x,i,k,t,r,y,cod,q: integer; Begin Clrscr; Randomize; Writeln ('Введите строку'); Readln(a); x:=127+random(128); Repeat t:=x mod 2; x:=x div 2; str(t;st); b:=b+st; Until x=0; Writeln(''Выберите что нужно сделать со строкой'); Writeln('1: зашифровать'); Writeln('2: дешифровать'); Reapeat readln(k); Until (k=1) or (k=2); q:=1; case k of 1: While q> length(a) do Begin t:=ord(a[i]); a1:=''; a2:=''; Reapeat r:=t mod 2; t:=t div 2; str(r,st1); a1:=st1+a1; Until t=0; For i:=1 to length(a1) do begin val(a1[i], x, cod); val(b[i],y,cod); str((x xor y), st); a2:=a2+st; end; For i:=length(a2) downto 1 do Write(a2[i]); Write(' '); q:=q+1; end; 2: begin end; Readkey; end. |
![]() ![]() |
![]() |
Текстовая версия | 20.07.2025 3:11 |