Организовать процессы шифрования и дешифровки записью семёрок символов текста в обратном...

0 голосов
61 просмотров

Организовать процессы шифрования и дешифровки записью семёрок символов текста в обратном порядке. Если длина сообщения не кратна семи, то сообщение перед шифрованием дополнить словом «корвет» или некоторой его левой частью до получения длины, кратной семи.


Информатика (25 баллов) | 61 просмотров
Дан 1 ответ
0 голосов
Правильный ответ

Var
  i,j,n:integer;
  s,a,t:string;
begin
write('Введи текст: ');

readln(s);
 
n:=length(s); 
i:=n mod 7; 
if i>0 then
    begin
    i:=7-i;
    s:=s+copy('корвет',1,i);
    n:=n+i;
    end;
for i:=1 to n do
 
 begin
   a:=a+s[i];
   if i mod 7=0 then
     begin
     for j:= 7 downto 1 do
        t:=t+a[j];
     a:='';
     end
   end;
writeln(t)
end.

Можно использовать специальную функция переворота строки. Будет чуть короче
var
  i,j,n:integer;
  s,a,t:string;
begin
write('Введи текст: ');
readln(s);
 
n:=length(s); 
i:=n mod 7; 
if i>0 then
    begin
    i:=7-i;
    s:=s+copy('корвет',1,i);
    n:=n+i;
    end;
for i:=1 to n do
 
 begin
   a:=a+s[i];
   if i mod 7=0 then
     begin  
     t:=t+ReverseString(a);
     a:='';
     end
   end;
writeln(t)
end.

Sub z()
s = InputBox("Введи текст")
n = Len(s)
i = n Mod 7
If i > 0 Then
    i = 7 - i
    s = s & Mid("корвет", 1, i)
    n = n + i
    End If
For i = 1 To n
    a = a + Mid(s, i, 1)
    If i Mod 7 = 0 Then
          t = t + StrReverse(a)
          a = ""
          End If
Next i
MsgBox (t)
End Sub

0

как будет это записано на Visual Basic?

0

)))) А раньше ты не могла об этом сказать?))))

0

Придется тебе заново вопрос задавать, конечно, если кто другой тебе не решит. Потому что время на изменение ответа тут ограничено. Пока я буду переделывать, время закончится.

0

Твое счастье - не закрылся ответ, успел добавить))

0

Спасибо)