Обобщением различных случаев деления целого неотрицательного числа а на натуральное число b является следующий алгоритм деления уголком.

1. Если а =b, то частное q = 1, остаток r = 0.

2. Если а >b и число разрядов в числах а и b одинаково, то частное q находим перебором, последовательно умножая b на 1, 2, 3, 4, 5, 6, 7, 8,9, так как а < 10 b. Этот перебор можно ускорить, выполнив деление с остатком цифр старших разрядов чисел а и b .

3. Если а > b и число разрядов в числе а больше, чем в числе b, то записываем делимое а и справа от него делитель b, который отделяем от а уголком и ведем поиск частного и остатка в такой последовательности:

а) Выделяем в числе а столько старших разрядов, сколько разрядов в числе b или, если необходимо, на один разряд больше, но так, чтобы они образовывали число d1, больше или равное b . Перебором находим частное q1 чисел d1, и b, последовательно умножая b на 1, 2, 3, 4, 5, 6, 7, 8, 9. Записываем q1 под уголком (ниже b).

б) Умножаем b на q1, и записываем произведение под числом а так, чтобы младший разряд числа bq1 был написан под младшим разрядом выделенного числа d1.

в) Проводим черту под bq1 и находим разность r1 = d1 - bq1.

г) Записываем разность r1, под числом bq1 , приписываем справа к r1 старший разряд из неиспользованных разрядов делимого а и сравни­ваем полученное число d2 с числом b .

д) Если полученное число d2 больше или равно b, то относительно него поступаем согласно п. 1 или п. 2. Частное q2 записываем после q1.

е) Если полученное число d2 меньше b, то приписываем еще столы следующих разрядов, сколько необходимо, чтобы получить первоечисло d3, большее или равное b. В этом случае записываем после q1 то же число нулей. Затем относительно d3 поступаем согласно пп. 1, 2. Частное q2 записываем после нулей. Если при использовании младшей разряда числа а окажется, что d3 < b, то тогда частное чисел d3 и b равно нулю, и этот нуль записывается последним разрядом к частном, а остаток r =