La Web del Programador: Comunidad de Programadores
 
    Pregunta:  65599 - PROBLEMA CON LA DIVISION SIN USAR /
Autor:  hector lopez
hola que tal tengo una duda tengo q hacer un programa que realize una division pero sin usar el operador "/" y con tres variables divisor, dividendo y cociente el problema es que el usuario puede elegir la cantidad de decimales que desea del resultado si me pueden dar idea les agradeceria mucho.

  Respuesta:  nelson E.R.
import java.io.BufferedReader;

import java.io.IOException;
import java.io.InputStreamReader;

public class clase {
//D=d.c+r

public static int Division(int Div, int div) {
int i = 1;
while (Div > (div * i++));//aqui tantea si el producto de div*i supera a Div entonces sale del ciclo lo q implicara q ese producto es la cant aprox al cociente de esa division
return --i;
}

public static void main(String args[]) throws IOException {
BufferedReader entrada = new BufferedReader(new InputStreamReader(System.in));
System.out.println("Indique Dividendo");
int Div=Integer.parseInt(entrada.readLine());
System.out.println("indique divisor");
int div = Integer.parseInt(entrada.readLine());
System.out.println("indique la cant de decimales");
int decimales = Integer.parseInt(entrada.readLine());
decimales = (int) Math.pow(10, decimales);
String resultado = "";
int i = Division(Div, div) - 1;
if (i == 0) {//nunca entro al ciclo es decir Div
//si eligio segun la cant de decimales se multiplicara al Div tantos ceros como lo indico el usuario seran los decimales a mostrar
int n = Division(Div * decimales, div) - 1;
resultado = new String().valueOf(0);
resultado += ".";
resultado += new String().valueOf((n) * div);
}
int faltante = Div - (div * i);
if (faltante > 0 && resultado.length() == 0) {
resultado = new String().valueOf( i);
resultado += ".";
if (decimales > 0) {
int n = Division(faltante* decimales, div) - 1;
resultado += new String().valueOf(n);
}
}
System.out.println(""+resultado);
}
}