• Напишите сложную в кодировании программу на паскале(любую).​

Ответы 2

  • Спасибо)
  • uses crt;

    {разделители слов, можно еще добавить}

    const zn=[' ',':',',','!','?','-',';',')'];

    var s,s1,s2:string;

       i,k:byte;

    begin

    clrscr;

    writeln('Введите строку, содержащую 2 одинаковых слова:');

    readln(s);

    s:=s+' ';{добавим в конец пробел}

    for i:=1 to length(s) do

    if s[i] in zn then s[i]:=' ';{все разделители заменим на пробелы}

    while pos('  ',s)>0 do{пока есть 2 пробела рядом(в апострофах 2 пробела)}

    delete(s,pos('  ',s),1);{1 пробел удаляем}

    if s[1]=' ' then delete(s,1,1);{если первый символ пробел, тоже удаляем}

    k:=0;

    while pos(' ',s)>0 do{пока есть пробел}

    begin

     s1:=copy(s,1,pos(' ',s)-1);{копируем первое слово до пробела}

     for i:=pos(' ',s)+1 to length(s) do{смотрим строку дальше}

     if (copy(s,i,length(s1))=s1){если набор символов совпадает с этим словом}

        and(s[i-1]=' '){и перед ним пробел}

        and((s[i+length(s1)]=' '){и за ним пробел}

        or(i+length(s1)-1=length(s))) then{или это последнее слово}

         begin

          k:=1;{фиксируем совпадение}

          s2:=s1;{запоминаем слово}

          write('Одинаковые слова ',s2);{выводим на экран}

          readln;

          exit;{выходим из программы, нужно только 1 пару}

         end;

     delete(s,1,pos(' ',s));{удаляем первое слово, следующее первое}

    end;

    if k=0 then write('Нет двух одинаковых слов');

    readln

    end.

    https://pastebin.com/iBg0qVwg Залил тебе на пастибин, что-бы тебе удобней было.

  • Добавить свой ответ

Войти через Google

или

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

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

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