/** Glavna metoda */
  public static void main(String[] args) {

    // Provjeri argumente
    if (args.length != 3) {
      System.out.println("Koristite: operand1 operator operand2");
      System.exit(0);
    }

    String operand1 = args[0]; // Prvi operand
    String operator = args[1]; // Operator
    String operand2 = args[2]; // Drugi operand

    // Prvi broj
    int numerator1 = 0;
    int denominator1 = 0;
    // Drugi broj
    int numerator2 = 0;
    int denominator2 = 0;
    // Pretvori argumente u brojeve
    try { // Prvi broj
      numerator1 = Integer.parseInt(operand1.split("/")[0]);
      denominator1 = Integer.parseInt(operand1.split("/")[1]);
      // Drugi broj
      numerator2 = Integer.parseInt(operand2.split("/")[0]);
      denominator2 = Integer.parseInt(operand2.split("/")[1]);
    } catch (NumberFormatException e) {
      System.out.println("Greska u argumentima!");
      System.exit(0);
    }

    // Kreiraj objekte
    Rational r1 = new Rational(numerator1, denominator1);
    Rational r2 = new Rational(numerator2, denominator2);

    // Kreiraj objekat za rezultat
    Rational rezultat = new Rational();

    // Izracunaj rezultat
    switch (operator) {
      case "+":
        rezultat = r1.add(r2);
        break;
      case "-":
        rezultat = r1.subtract(r2);
        break;
      case ".":
        rezultat = r1.multiply(r2);
        break;
      case "/":
        rezultat = r1.divide(r2);
        break;
      default:
        System.out.println("Neispravan unos!");
        System.exit(0);
    }

    // Ispisi rezultat
    System.out.println(operand1 + " " + operator + " " + operand2 + " = " + rezultat);
  }
 static Rational operate(Rational op1, Rational op2, int operation) {
   if (operation == 0) {
     return Rational.add(op1, op2);
   } else if (operation == 1) {
     return Rational.subtract(op1, op2);
   } else if (operation == 2) {
     return Rational.multiply(op1, op2);
   } else {
     return Rational.divide(op1, op2);
   }
 }
  public static void main(String args[]) {
    enterData();

    Rational r1 = new Rational(num1, den1);
    Rational r2 = new Rational(num2, den2);
    Rational r3 = new Rational();

    r3.multiply(r1, r2);
    System.out.println(
        "\n\n" + r1.getOriginal() + " * " + r2.getOriginal() + "  =  " + r3.getRational());
    r3.divide(r1, r2);
    System.out.println(
        "\n" + r1.getOriginal() + " / " + r2.getOriginal() + "  =  " + r3.getRational());

    //	100 Point Version Only
    r3.add(r1, r2);
    System.out.println(
        "\n" + r1.getOriginal() + " + " + r2.getOriginal() + "  =  " + r3.getRational());
    r3.subtract(r1, r2);
    System.out.println(
        "\n" + r1.getOriginal() + " - " + r2.getOriginal() + "  =  " + r3.getRational());
    System.out.println();
  }
Exemple #4
0
  public static void main(String[] args) {
    Rational r1 = new Rational(1, 5); // rational number 1/5
    Rational r2 = new Rational(1, 2); // rational number 1/2

    r1.multiply(r2); // Multiplies r1 by r2, changes r1 to 1/10 (0.1)
    System.out.println(r1);
    System.out.println(r1.denominator); // 10
    System.out.println(r1.numerator); // 1

    System.out.println();
    r2.divide(r1); // Divides r2 by r1, changes r2 to 5/1 (5.0)
    System.out.println(r2);
    System.out.println(r2.denominator); // 2
    System.out.println(r2.numerator); // 10

    System.out.println();
    System.out.println(r2.gcd()); // 2

    System.out.println();
    r2.reduce();
    System.out.println(r2.denominator); // 1
    System.out.println(r2.numerator); // 5

    System.out.println();
    System.out.println(r1.compareTo(r2)); // -1
    System.out.println(r2.compareTo(r1)); // 1

    System.out.println();
    System.out.println(gcd(32, 12)); // 4

    System.out.println();
    r1.add(r2);
    System.out.println(r1); // 5.1

    System.out.println();
    r2.subtract(r1);
    System.out.println(r2); // -0.1

    System.out.println();
    System.out.println(r1.compareTo(r2)); // 1
    System.out.println(r2.compareTo(r1)); // -1

    Rational r3 = new Rational(3, 4);
    Rational r4 = new Rational(4, 5);

    System.out.println();
    System.out.println(r3.compareTo(r4)); // -1
    System.out.println(r4.compareTo(r3)); // 1

    Rational r5 = new Rational(33333333, 100000000);
    Rational r6 = new Rational(1, 3);

    System.out.println();
    System.out.println(r5); // 0.33333333
    System.out.println(r6); // 1/3
    System.out.println(r5.compareTo(r6)); // 1
    System.out.println(r6.compareTo(r5)); // -1

    System.out.println("-------------");
    System.out.println("-- .equals --");
    System.out.println(r3.equals(r4)); // false
    Rational re0 = new Rational(0, 10);
    Rational re1 = new Rational(0, 3);
    System.out.println(re0.equals(re1)); // true
    System.out.println(re1.equals(re0)); // true
    Rational re2 = new Rational(2, 4);
    Rational re3 = new Rational(12, 24);
    Rational re4 = new Rational(-12, -24);
    System.out.println(re2.equals(re3)); // true
    System.out.println(re4.equals(re2)); // true
    Rational re5 = new Rational(3, 7);
    Rational re6 = new Rational(3, -7);
    Rational re7 = new Rational(-3, 7);
    System.out.println(re5.equals(re6)); // false
    System.out.println(re7.equals(re5)); // false
    System.out.println(re6.equals(re7)); // true
  }