Постройте схему, выполняющую умножение вводимого числа в четверичной системе на 3.
Данная схема состоит из вершин (называемых состояниями) и стрелок, символизирующих правила, по которым работает эта схема. Схема начинает работу в начальном состоянии S0, выделенном оранжевым. Поступающее на ход число анализируется посимвольно. При рассмотрении каждого символа мы переходим из текущего состояния по стрелочке, над которой написан этот символ.
В данной задаче мы записываем число от последней цифры к первой. Если количество цифр в произведении больше количества цифр в множителе, для правильной работы автомата к множителю спереди нужно добавить 0 (т. е. добавить 0 в конце вводимой строки).
Например, для строки 123 автомат выдаст строку 322, а для строки 1230 (соответствующей тому же самому четверичному числу 321) выдаст результат 3222 (соответствующий числу 2223).
Нам понадобятся всего три состояния, соответствующие переносам из разряда в разряд: S0 соответствует переносу 0 (0 «в уме»), S1 соответствует переносу 1, S2 соответствует переносу 2.
Рассмотрим какую-нибудь стрелочку из эталонного решения, например Каким арифметическим операциям она соответствует? Мы считываем символ 3 и умножаем его на 3, получаем четверичное число 21. Добавляем единицу, которая была «в уме» (состояние S1) и получаем 22. Это число как раз и соответствует правой части команды. По такому же принципу строятся и остальные команды.
Ответ: см. рис.