Задание 1. Тип заданий 14: алгоритмы с исполнителем.
  • Задание:

    Исполнитель Редактор получает на вход строку из букв русского алфавита. Редактор может выполнять три команды, в которых x обозначает номер символа в строке.
    А) Заменить1(x).
    Эта команда меняет символ, стоящий под номером x на предыдущий символ алфавита. Например, выполнение команды
    заменить1(5)
    преобразует строку ПРИВЕТ в ПРИВДТ.
    Б) Заменить2(x).
    Эта команда меняет символ, стоящий под номером x на следующий символ алфавита. Например, выполнение команды
    заменить2(5)
    преобразует строку ПРИВЕТ в ПРИВЁТ.
    В) Проверка(x)
    Эта команда проверяет, является ли символ, стоящий в строке под номером x гласной буквой.

    Каждое повторение цикла


    НЦ ДЛЯ i от 1 до 10
    последовательность команд
    КЦ


    переменная i, изначально равная 1, увеличивается на 1, пока не станет равна 10, после чего цикл завершится.

    В конструкции


    ЕСЛИ условие
    ТО команда1
    ИНАЧЕ команда2
    КОНЕЦ ЕСЛИ

    выполняется команда1 (если условие истинно) или команда2 (если условие ложно).

    Какая команда получится в результате приведенной ниже программы к строке, являющейся словом ДЕРЕВО.

    НАЧАЛО

    НЦ ДЛЯ i от 1 до 2

    НЦ ДЛЯ j от 1 до 6

    ЕСЛИ проверка(j)

    ТО заменить1(j)

    ИНАЧЕ заменить2(j)

    КОНЕЦ ЕСЛИ

    КЦ

    КЦ

    КОНЕЦ


    Русский алфавит: АБВГДЕЁЖЗИЙКЛМНОПРСТУФХЦЧШЩЪЫЬЭЮЯ

  • Решение:

    Рассмотрим алгоритм.

    Очевидно, что цель первого цикла — два раза повторить второй цикл.

    Второй цикл проверяет каждую букву слова, и в том случае, если она гласная, меняет её на предыдущий символ алфавита, иначе (если согласная) — меняет на следующий. Таким образом, мы можем просто изменить каждую букву строки два раза изменить по этому принципу:

    1. ДЕРЕВО => ЕДСДГН

    2. ЕДСДГН => ДЕТЕДО

    Ответ: ДЕТЕДО

Поделиться:
 
Комментарии (0)

Нет комментариев. Ваш будет первым!

Перевести число из в Результат: 510 = 1012