resto de division recursiva

C
 // devuelve el reseto de la division entera entre dividendo y divisor
 // no se puede usar el operadoro % ni cocientini
  int resto(int dividendo, int divisor){
    int res;

    if(dividendo < divisor){ //caso base
      res = dividendo;
    }else{
      res = resto(dividendo - divisor, divisor);
    }

    return res;
  } // devuelve el cociente de la division entera entre dividendo y divisor
 // (no se puede usar el operador cociente)
  int cociente(int dividendo, int divisor){
    int res = 1;
    if(dividendo - divisor < 0){//caso base 1
      res = 0;
    }else if( dividendo - divisor == 0){//caso base 2
      res = 1;
    }else{
      res = res + cociente(dividendo - divisor, divisor);
    }

    return res;
  }
Source

Also in C: