Статья 2289

Существуют намного более быстрые методы. Примером является алгоритм умножения, изучаемый в начальной школе он основан на том же самом принципе, но только уменьшают более крупными шагами. Вместо того чтобы уменьшить значение, его делят на 10, что в десятичной системе выполнять особенно легко. В самом деле, никто в этом смысле даже не думает о делении, а воспринимает свои действия просто как разбивку числа на составляющие его цифры. Отделение цифр можно выполнить в алгебраическом виде, используя две математические операции. Эти операции позволяют определить соответственно целую часть и остаток от деления.
Чтобы применить этот эффективный метод, можно ввести модификацию алгоритма, непосредственно исходя из требования сохранить инвариантным высказывание. Оператор присваивания в исходном алгоритме следует заменить на сохранение инвариантности требует, чтобы а было умножено на 10, и поэтому в программу надо добавить оператор.