AA1

Задача.  В заданной строке заменить подряд идущие пробелы на один пробел.

Тесты:

Ввод Вывод Комментарий
as  fg   t as fg t Пройден
   rty g  uio  rty g uio Пройден
Решение:

Будем записывать подходящие элементы в новую строку. Сразу добавим первый символ, он нам подходит вне зависимости от того, пробел он, или нет. Далее просмотрим каждый символ строки, если он нам подходит, запишем в новую строку.  Нулевой элемент уже добавлен, поэтому цикл начинается с единицы, что позволяет проверять предыдущий символ без выхода за границы.

С работой программы можно ознакомиться здесь.

Related Images:

3 thoughts on “AA1

  1. Проверил. Работает, но:
    — зачем два условных оператора с одним и тем же действием?
    — если в начале строки стоит пробел, то Вы обращаетесь к несуществующей «минус первой» букве строки. Если я не ошибаюсь, то это «undefined behavior». Проверьте меня, пожалуйста по документации.

    • Количество условных операторов изменила.
      В ситуации, когда нулевой элемент данной строки пробел, он попадает в новую строку еще до цикла. Цикл начинается с 1, то есть к «минус первой» букве мы не обращаемся.

Добавить комментарий