Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package kr_2;
- public class Fraction {
- private int numerator;
- private int denominator;
- public Fraction(int num, int denum) {
- this.numerator = num;
- this.denominator = denum;
- }
- public Fraction(String txt) {
- String[] nums = txt.split("/");
- this.numerator = Integer.parseInt(nums[0]);
- this.denominator = Integer.parseInt(nums[1]);
- }
- @Override
- public String toString() {
- String str = this.numerator + "/" + this.denominator;
- return str;
- }
- public Fraction sum(Fraction anotherFr) {
- int num = this.numerator * anotherFr.denominator + anotherFr.numerator * this.denominator;
- int denum = this.denominator * anotherFr.denominator;
- Fraction fr = new Fraction(num, denum);
- fr.sakrati();
- return fr;
- }
- public Fraction subtract(Fraction anotherFr) {
- int num = this.numerator * anotherFr.denominator - anotherFr.numerator * this.denominator;
- int denum = this.denominator * anotherFr.denominator;
- Fraction fr = new Fraction(num, denum);
- fr.sakrati();
- return fr;
- }
- public Fraction multiply(Fraction anotherFr) {
- int num = this.numerator * anotherFr.numerator;
- int denum = this.denominator * anotherFr.denominator;
- Fraction fr = new Fraction(num, denum);
- fr.sakrati();
- return fr;
- }
- public Fraction divide(Fraction anotherFr) {
- int num = this.numerator * anotherFr.denominator;
- int denum = this.denominator * anotherFr.numerator;
- Fraction fr = new Fraction(num, denum);
- fr.sakrati();
- return fr;
- }
- private int gcd(int a, int b) {
- if (b == 0) {
- return a;
- } else {
- return gcd(b, a % b);
- }
- }
- public void sakrati() {
- int div = gcd(this.denominator, this.numerator);
- this.numerator /= div;
- this.denominator /= div;
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement