есть исполнитель арифмометр который понимает следующие команды



Автор Максон Калмыков задал вопрос в разделе Другие языки и технологии

6. Почему приведённые ниже алгоритмы для исполнителя «Арифмометр» не могут быть выполнены (какие свойства алгоритма нар и получил лучший ответ

Ответ от Андрей Севастьянов[гуру]
А) После действия "умножить" в стеке будет лежать результат -- число 20. Следующее действие "вычесть" требует двух операндов, а у на только один. Опа!
Б) В арифмометре не определена команда "разделить". Опа!
В) Не указаны числа в командах "взять". Опа!

Ответ от Илья Павлов[гуру]
Ошибка в первом алгоритме. 2 числа в памяти, они перемножаются, в памяти остается результат: 20. Далее бинарная команда вычесть, но операнд (20) всего один.. .
Второй алгоритм, стого говоря, выполним. Единственное, что не так, это то, что в нем 3 делится на 6. При целочисленном делении в результате будет 0. Если ваш "Арифмометр" не умеет делить меньшее на большее - то и этот алгоритм не выполним. (Да, судя по ответу ниже, он вообще не умеет делить :))
Третий алгоритм не указывает, какие конкретно числа берутся. Взять число - довольно расплывчатое понятие. Тип операндов при таком условии однозначно не определен. Взять число.. . Хорошо, возьму число 0,123 и второе число то же 0,123. Операдны дробные, а с такими "Арифмометр" работать не умеет.
Нарисуй память в виде стека, и попробуй поиграть в процессор )). Все поймешь.

Ответ от 22 ответа[гуру]
Привет! Вот подборка тем с похожими вопросами и ответами на Ваш вопрос: 6. Почему приведённые ниже алгоритмы для исполнителя «Арифмометр» не могут быть выполнены (какие свойства алгоритма нар
 

Ответить на вопрос:

Имя*

E-mail:*

Текст ответа:*
Проверочный код(введите 22):*