Algoritmo per calcolare la divisione intera a 2 input e 2 output (quoziente e resto).

Nel calcolo della divisione di un numero A per un altro numero B (B ≤ A) cerco di ricondurmi alla divisione per B di numeri man mano più piccoli, fino ad arrivare a 0 o a un numero comunque inferiore a B;
(1)
   2875 | 3
        |————
        |
(2)
   2875 | 3
        |————
        | 900
(3)
   2875 | 3
   2700 |————
        | 900
(4)
   2875 | 3
  -2700 |————
  ————— | 900
    175
(5)
   2875 | 3
  -2700 |————
  ————— | 900
    175    50
(6)
   2875 | 3
  -2700 |————
  ————— | 900
    175    50
   -150
  —————
     25
(7)
   2875 | 3
  -2700 |————
  ————— | 900
    175    50
   -150     8
  —————
     25
    -24
  —————
      1
(8)

    900
     50
      8
    ———
    958

 con resto 1
(1)  per fare 2875 diviso 3 posso osservare che  (2)-(3)  2700 diviso 3 fa 900 e quindi ricondurmi a dividere per 3 la  (4)  parte rimanente, 175 (in pratica cambio segno a 2700 e lo sommo a 2875);  (5)-(6)  150 diviso 3 fa 50, e rimane ancora 25 da dividere per 3;  (7)  24 diviso 3 fa 8, e rimane 1, che è più piccolo di 3;  (8)  posso quindi concludere che 2875 è divisibile in 3 parti uguali a 900+50+8 = 958, e mi resta 1, che dovrei ancora dividere per 3, ma non posso farlo restando nell'ambito dei numeri interi. In altre parole 2875/3 = 958 + 1/3.