Simplificacionde una fraccion

Iniciado por Sempai15, 27 Julio 2016, 19:24 PM

0 Miembros y 1 Visitante están viendo este tema.

Sempai15

Hola, me pidieron sacar en jframe de fracciones (sea suma, resta, multiplicacion, divisor), pero simplificado el resultado.

Primero la clase Fracción le tengo asi:
public class Fraccion {

    //atributos
    private int numerador;
    private int denominador;

    //metodos
    public Fraccion() {
        this.numerador = 1;
        this.denominador = 1;
    }

    public Fraccion(int numerador, int denominador) {
        this.numerador = numerador;
        this.denominador = denominador;
    }

    public int getNumerador() {
        return this.numerador;
    }

    public void setNumerador(int nuevo) {
        this.numerador = nuevo;
    }

    public int getDenominador() {
        return this.denominador;
    }

    public void setDenominador(int nuevo) {
        this.denominador = nuevo;
    }

    @Override
    public String toString() {
        return numerador + "/" + denominador;
    }

    public Fraccion sumar(int numerador2, int denominador2) {
        int a = numerador;
        int b = denominador;
        int c = numerador2;
        int d = denominador2;
        int e = (d * a) + (b * c);
        int f = b * d;
        Fraccion resultado = new Fraccion(e, f);
        return resultado;
    }

    public Fraccion sumar(Fraccion fra) {
        return sumar(fra.getNumerador(),
                fra.getDenominador());
    }

    public Fraccion restar(int numerador2, int denominador2) {
        return sumar(-numerador2, denominador2);
    }

    public Fraccion restar(Fraccion fra) {
        return sumar(-fra.getNumerador(), fra.getDenominador());
    }

    public Fraccion multiplicar(int numerador2, int denominador2) {
        int num = numerador * numerador2;
        int dem = denominador * denominador2;
        return new Fraccion(num, dem);
    }

    public Fraccion multiplicar(Fraccion fra) {
        return multiplicar(fra.getNumerador(),
                fra.getDenominador());
    }

    public Fraccion division(int numerador2, int denominador2) {
        int num = numerador * denominador2;
        int den = denominador * numerador2;
        return new Fraccion(num, den);
    }

    public Fraccion division(Fraccion fra) {
        return division(fra.getNumerador(), fra.getDenominador());
    }

Y este es el codigo del jframe:
  private void jbtnResultadoActionPerformed(java.awt.event.ActionEvent evt) {                                             
        try {
            Fraccion obj = new Fraccion();
            //Primera fraccion
            int num1 = Integer.parseInt(jTxtNum1.getText());
            int den1 = Integer.parseInt(jtxtDen1.getText());
            obj.setNumerador(num1);
            obj.setDenominador(den1);
            //Segunda Fraccion
            int num2 = Integer.parseInt(jtxtNum2.getText());
            int den2 = Integer.parseInt(jtxtDen2.getText());

            Fraccion resultado = null;

            if (jcboOperaciones.getSelectedItem().equals("+")) {
                resultado = obj.sumar(num2, den2);
            } else if (jcboOperaciones.getSelectedItem().equals("-")) {
                resultado = obj.restar(num2, den2);
            } else if (jcboOperaciones.getSelectedItem().equals("*")) {
                resultado = obj.multiplicar(num2, den2);
            } else if (jcboOperaciones.getSelectedItem().equals("/")) {
                resultado = obj.division(num2, den2);
            }

            //Final
            jtxtNum3.setText("" + resultado.getNumerador());
            jtxtDen3.setText("" + resultado.getDenominador());
        } catch (Exception ex) {
            JOptionPane.showMessageDialog(this, "Ingrese solo valores numericos");
        }
    }

+ 1 Oculto(s)

y tu pregunta es????

te falto las etiquetas GeSHi