• Задача на языке Pascal.
    Дана строка, где слова разделены пробелом (без знаков препинания). Зашифровать строку так: каждое слово заменить числом.
    Первое слово - 1 и все, с ним совпадающие тоже 1. Следующее -2 и т.д.
    Например:
    Саша шел по дороге шел Саша шел и упал упал и заплакал.
    Выход: 1 2 3 4 2 1 2 5 6 6 5 7

Ответы 1

  • var i,j,k,m,uk,ind: integer;

       s,sb: string;

       a: array[1..100] of string;

       priz: boolean;

    begin

     write('строка: '); readln(s);

     uk:=0;

     k:=1; m:=1;

     for i:=1 to length(s) do

     begin

       if (s[i]=' ') or (i=length(s)) then  

       begin

         sb:='';

         for j:=m to k-1 do sb:=sb+s[j];  

         priz:=true;

         if uk>0 then

         begin

           for j:=1 to uk do  

           if sb=a[j] then

           begin

             priz:=false;

             ind:=j;

             break;

           end;  

         end;  

         if priz then

         begin

           uk:=uk+1;  

           a[uk]:=sb;    

           write(uk,' ');

         end

         else write(ind,' ');

         m:=i+1; k:=m-1;

       end;

       k:=k+1;

     end;

    end.

    строка: Саша шел по дороге шел Саша шел и упал упал и заплакал.

    1 2 3 4 2 1 2 5 6 6 5 7

    • Автор:

      mónica31
    • 6 лет назад
    • 0
  • Добавить свой ответ

Еще вопросы

Войти через Google

или

Забыли пароль?

У меня нет аккаунта, я хочу Зарегистрироваться

How much to ban the user?
1 hour 1 day 100 years