Номер §3.4 ПМ 1

ГДЗ по информатике 8 класс, Босова 2023, страница 105

§. ПМ Трассировка линейного алгоритма

Дан алгоритм выдачи сдачи s наименьшим количеством банкнот по 1000 (k1000), 500 (k500), 100 (k100) и 50 (k50):
k1000 := s div 1000
s := s mod 1000
k500 := s div 500
s := s mod 500
k100 := s div 100
s := s mod 100
k50 := s div 50
Выполните алгоритм для s = 745 и s = 1864. Составьте соответствующие таблицы значений переменных.

Решение

Операция div даёт целую часть частного, а mod — остаток от деления. Команды выполняются строго сверху вниз, поэтому для каждого шага берём текущее значение s.
При s = сначала , остаток . Далее , остаток . Затем , остаток . Последняя команда даёт .

Шаг Выполненная команда s k k k k
начальное значение — — — —
k := s div — — —
s := s mod — — —
k := s div — —
s := s mod — —
k := s div —
s := s mod —
k := s div

При s = получаем и ; затем и ; затем и ; наконец, .

Шаг Выполненная команда s k k k k
начальное значение — — — —
k := s div — — —
s := s mod — — —
k := s div — —
s := s mod — —
k := s div —
s := s mod —
k := s div

Проверка: и . В первом случае после последней команды s = . Во втором случае s = , поскольку команды «s := s mod » в алгоритме нет. Из этих рублей выдаётся одна банкнота по рублей, и рублей остаются не выданными банкнотами указанных номиналов.

Ответ

При s = : k = , k = , k = , k = ; остаток s = .
При s = : k = , k = , k = , k = ; остаток s = .

Помогло?

Нет твоего задания?Сфоткай, и ДЗмэн решит за пару секунд.

Решить по фото