Al igual que con la suma, la implementación de la resta se realiza de manera similar a la que hacemos a mano. Recorremos los bloques de los menos a los más significativos y los vamos restando. Si el resultado es negativo, “pedimos prestado” al siguiente bloque. Esto es, incrementamos el bloque por la base y decrementamos en uno el siguiente bloque.
Ya que nuestra implementación la estamos realizando para números naturales, está implícito que el minuendo debe ser mayor o igual al sustraendo. En caso de que no sea así, el resultado no será el correcto.
La siguiente función la denominamos resta, y como su nombre indica, arroja como resultado la substracción de los dos argumentos. Efectuamos la resta del bloque menos al más significativo, haciendo el ajuste cada que se necesite. En las líneas 13 y 14 revisamos si el tamaño del número disminuyó, y lo reducimos mientras sea necesario.
Código en C
Problemas
Valladollid: