Заменить в самом длинном слове строки буквы 'а' на 'б' (КуМир)

Тема: 
Строки

Дана строка символов. Группы символов, разделенные одним или несколькими пробелами и не содержащие пробелов внутри себя, будем называть словами. В самом длинном слове заменить все буквы «а» на «б».

Алгоритм решения задачи:

  1. Пусть в переменных len хранится длина слова, max_w - длина самого длинного слова, id_w - индекс первого символа самого длинного слова, count - длина текущего слова.
  2. Будем перебирать в цикле все символы строки от начала (1) до конца (len - длина строки).
  3. Если рассматриваемый символ не пробел, то увеличим значение длины текущего слова (count).
  4. Если все же символ пробел, то сравним длину текущего слова (count) с длиной, записанной в max_w. Если count больше, то изменим значение max_w на значение count, а индекс начала слова (id_w) найдем вычтя из индекса текущего символа длину слова.
  5. Кроме того, если символ пробел, то надо обнулить значение count, т. к. начнется новое слово.
  6. Длина последнего слова не сравнивается с max_w, если строка не заканчивается пробелом. Поэтому после цикла надо еще раз сравнить значения count и max_w.
  7. Переберем все символы самого длинного слова от его начала (id_w) до его конца (id_w + max_w) и если встретится буква "а", то заменить ее на букву "б".

алг замена букв
нач
  лит s
  цел i, len, max_w, id_w, count
  ввод s
  len := длин(s)
  max_w := 0
  id_w := 0
  count := 0
  нц для i от 1 до len
    если s[i] <> ' ' то
      count := count + 1
     иначе
      если count > max_w то
        max_w := count
        id_w := i - count
      все
     count := 0
    все
  кц
  если count > max_w то 
    max_w := count
    id_w := i - count
  все
 
  нц для i от id_w до id_w+max_w
    если s[i] = 'а' то
      s[i] := 'б'
    все
  кц
  вывод s
кон

Пример выполнения кода:

привет тарелка нло
привет тбрелкб нло