Os quiero mostrar como implementar una función recursiva para calcular el cociente de dos números enteros en Java. Para encontrar la solución de este problema haremos lo siguiente:

El caso base saldrá de la función en el caso que el dividendo sea menor que el divisor. En caso contario, se resta al divisor el dividendo y se llama de nuevo a la función pasándole como argumento el resultado de esta operación como primer argumento y el divisor como segundo. Se devuelve el número de veces que se ha hecho esta resta.

Para ilustrar esta operación, os muestro una propuesta de implementación:

import java.util.Scanner;

public class CocienteRecursivo {

	public static void main(String[] args) {
		Scanner sc = new Scanner(System.in);
        int n1, n2;
        System.out.print("Introduzca dividendo: ");
        n1 = sc.nextInt();
        do {
            System.out.print("Introduzca divisor (>0): ");
            n2 = sc.nextInt();
        } while (n1 <= 0);
        System.out.printf("%d/%d = %d %n", n1, n2, cociente(n1, n2));

	}
	
	public static int cociente ( int a, int b ) {
		if ( a < b ) return 0;
		else return 1 + cociente (a-b,b);
	}

}

Me pongo a vuestra disposición para resolver cualquier duda o aclaración que tengáis al propósito de este problema.

Dejar respuesta

Please enter your comment!
Please enter your name here