Давай посмотрим, что у нас на картинке. Нам предстоит выполнить алгоритм и найти значения переменных a и b по завершении его выполнения.
На левой части изображения у нас есть следующие исходные данные:
a := 32 div 13;- это целочисленное деление числа 32 на 13.b := 40 mod 3;- остаток от деления числа 40 на 3.
Далее стоит условие: если a > b, то b := (a + b) div 2, иначе b := (a * b) mod 2.
На правой части изображения у нас другие исходные данные:
a := 7;b := 30;
И условие: если a < b, то a := (a * 5) div b, иначе a := (a * b) mod b.
Решим каждый из алгоритмов по отдельности.
Для левой части:
- Вычислим
a := 32 div 13. Целая часть от деления 32 на 13 равна 2, так как 13 * 2 = 26, и это максимальное число, умноженное на 13, которое не превышает 32, а именно 32 - 26 = 6, это остаток. - Теперь
b := 40 mod 3. Остаток от деления 40 на 3 равен 1, так как 3 * 13 = 39, и 40 - 39 = 1. - Сравниваем
aиb. Значениеaравно 2, и это меньше, чемb, равное 1. Так что условиеa > bне выполняется, значит, используем вторую
